Page 1 sur 1

Problème mysql >> Fin php

Posté : 21 oct. 2006, 23:05
par ARTICHO
Voila je ne sias pas pourquoi mais j'ai ce message d'erreur me disant de me reporter à la derniere ligne de mon .php, pourquoi jai ce problème voici mon code et le message :
<?php
ob_start();
if(!empty($_POST['titre'])&&!empty($_POST['auteur'])
&&!empty($_POST['texte'])&&!empty($_POST['date']) )
{

   $db=mysql_connect("localhost","bevat.online","**********");
   mysql_select_db("pw_news",$db);
   $sql="INSERT INTO 'news' (titre, auteur, date, texte)
   VALUES='('".$_POST['titre']."', '".$_POST['auteur']."',
    '".$_POST['date']."', '".$_POST['texte']."')';
   $result=mysql_query($sql) OR die ('Erreur SQL!<br>.mysql_error());
header('Location: visualisation.php');
}
ob_end_flush();?>
Parse error: syntax error, unexpected $end in /mnt/135/sdc/b/6/bevat.online/bevat1.5/ajout.php on line 17

Posté : 21 oct. 2006, 23:10
par ARTICHO
Merci de me répondre dans les plus bref delais, c'est mon premier jour de php , soyez indulgent svp!!

Meci bon dimanche, articho (dsl pour le double post

Posté : 21 oct. 2006, 23:17
par albat
Modération :
Merci d'utiliser la balise
 pour présenter tes extraits de code
et ne laisse pas tes mots de passe en clair sur le forum.

J'ai édité ton message.[/color]

Posté : 21 oct. 2006, 23:21
par ARTICHO
Merci, débutant et imprudent..... :oops: :oops:

tu ne sais cependant paspourquoi j'obitens ce message d'erreur??

Merci d'avance ARTICHO

Posté : 21 oct. 2006, 23:22
par Ajoloca
Bonsoir,

PTT un petit souci ici ???
INSERT INTO 'news'
et,
.$_POST['texte']."')';
et pourquoi pas là ?
'Erreur SQL!<br>.mysql_error()

Posté : 21 oct. 2006, 23:46
par Truc
Merci de me répondre dans les plus bref delais
Ah l'autre hé :-s

On est tous un peu bénévole ici => réponse tu auras quand une personne voudra :wink:

Ajoloca t'a mis sur la voie .... regarde la coloration syntaxique de ton code.

Tu as aussi un "VALUES=" qui ne signifie pas grand chose... pas besoin de "=".

Posté : 22 oct. 2006, 09:23
par ARTICHO
Merci cette page a été corrigé, reste le travail des autres....... :( :(

Sinon, j'aimerai si le coeur vous en dit que vous m'indiquiez une eventuelle erreur dans ce code
<?php
   $db=mysql_connect("localhost","bevat.online","*********");
   mysql_select_db("pw_news",$db);
   $sql="SELECT * FROM 'news' ORDER BY 'id' DESC";
   $result=mysql_query($sql) OR die ('Erreur SQL! br>.mysql_error());
   while ($data=mysql_fetch-array($result))
{?>
<table border"1">
<tr><td><?=$data['titre'] ?>, écrit par <?=$data['auteur']?> le 

<?=$data['date']?></td></tr>
<tr><td><?=$data['texte']?></td></tr>
</table>
<br>
<?php}?>
   
   

Code : Tout sélectionner

Parse error: syntax error, unexpected T_STRING in /mnt/135/sdc/b/6/bevat.online/bevat1.5/visualisation.php on line 9


Merci d'avance et désolé pour me requete si désobligente :oops: :oops:

Bon dimanche, ARTICHO

Posté : 22 oct. 2006, 09:31
par Cyrano
Ce n'est pas une mais 3 erreurs que j'ai relevé :
- une apostrophe manquante,
- un début de balise absent,
- une fonction inexistante avec un "-" au lieu d'un "_",
J'ajoute que l'utilisation des "short-open-tag" n'est pas une bonne idée, si cette option est désactivée chez ton hébergeur, tu vas avoir des surprises désagréables.

Proposition de corrigé :
<?php
$db     = mysql_connect("localhost","bevat.online","*********");
mysql_select_db("pw_news",$db);
$sql    = "SELECT * FROM 'news' ORDER BY 'id' DESC";
$result = mysql_query($sql) OR die ('Erreur SQL! <br>'. mysql_error());
while ($data = mysql_fetch_array($result))
{
?>
<table border"1">
  <tr>
    <td><?php echo($data['titre']); ?>, écrit par <?php echo($data['auteur']); ?> le <?php echo($data['date']); ?></td>
  </tr>
  <tr>
    <td><?php echo($data['texte']); ?></td>
  </tr>
</table>
<br>
<?php
}
?>
Et on masque ses mots de passe quand on poste !

Posté : 22 oct. 2006, 13:24
par ARTICHO
Merci beaucoup beaucoup, pour le mdp, je sui distrait... :oops:

Sinon avec ce code j'obtiens ce message d'erreur :

Code : Tout sélectionner

Erreur SQL! You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''news' ORDER BY 'id' DESC' at line 1
Voila, pour le truc qui n'est peut etre pas admis chez mon hebergeur je n'ai pas compris... :oops: quelle pourrai etre l'alternative??

Merci d'avance, bone aprem, ARTICHO

Posté : 22 oct. 2006, 15:23
par Truc
L'erreur est due aux apostrophes autour des champs "news" et "id"
Tu peux utiliser la quote inversée pour protéger des mots réservés => ` Alt Gr + 7
Mais dans ce cas tu n'as pas besoin de protéger ces champs puisqu'il ne s'agit pas de mots réservés.
$sql    = "SELECT * FROM news ORDER BY id DESC";

Posté : 23 oct. 2006, 09:24
par ARTICHO
Bonjour,
meric tout d'abord pour toutes vos réponses exactes je dois l'admettre !! :)

Voila mon systeme de news fonctionne toujours pas. Cependant je ne pense pas qu'il y est de fautes dans ce code:
<?php
ob_start();
if(!empty($_POST['titre'])&&!empty($_POST['auteur'])
&&!empty($_POST['texte'])&&!empty($_POST['date']) )
{

   $db=mysql_connect("localhost","bevat.online","*********");
   mysql_select_db("pw_news",$db);
   $sql="INSERT INTO 'news' (titre, auteur, date, texte)
   VALUES('".$_POST['titre']."', '".$_POST['auteur']."',
    '".$_POST['date']."', '".$_POST['texte']."')";        
   $result=mysql_query($sql) OR die ('Erreur SQL!<br>.mysql_error()');


header('Location: visualisation.php');
}
ob_end_flush(); ?>
Voila merci d'avance, ARTICHO

Posté : 23 oct. 2006, 09:30
par Ajoloca
Bonjour,
PTT un petit souci ici ???
PHP:
INSERT INTO 'news'
L'erreur est due aux apostrophes autour des champs "news" et "id"
Tu peux utiliser la quote inversée pour protéger des mots réservés => ` Alt Gr + 7
Mais dans ce cas tu n'as pas besoin de protéger ces champs puisqu'il ne s'agit pas de mots réservés.
PHP:
$sql = "SELECT * FROM news ORDER BY id DESC";
Tu devrais lire plus attentivement les messages.