Rechercher : dans
Par :

J'ai un problème avec UPDATE

Dernière réponse le 12 nov 2009 à 23:25:33 aneantisseur, le 12 nov 2009 à 20:50:25 
 Signaler ce message aux modérateurs

Bonjour, je veux utiliser al fonction UPDATE, mais une erreur s'affiche, pourtant je n'en vois pas.

Voici mon code :

if (isset($_POST['bloquer']))
{
$donnees = mysql_fetch_array($reponse);
$lock = 0;
$unlock = 1;
$query_lock = mysql_query('UPDATE forum_'.$_GET['titre'].' SET lock='.$lock.' WHERE titre=\''.$donnees['titre'].'\'') or die (mysql_error());

if ($query_lock)
{
echo '<center> La discussion '.$donnees['titre'].' a bien été bloquée !</center>
';
}
}

Et voici l'erreur :

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 'lock=0 WHERE titre='L\'esprit d\'Ultra Vomit'' at line 1


Pouvez-vous m'aider ?
Merci.

Configuration: Windows Vista
Firefox 3.5.5

Meilleures réponses pour « j'ai un problème avec UPDATE » dans :
Windows Update [toutes versions] Voir Le moyen le plus commode pour tenir à jour son système est de passer par Démarrer>Tous les programmes>Windows Update. Une fois sur le site, seules seront proposées les mises à jour nécessaires. Cependant, un assez grand nombre d'utilisateurs...
Update Checker - Vos logiciels sont-ils à jour ? VoirVous avez du mal à tenir tous vos logiciels à jour ? En effet, sous Windows, quand on a plusieurs dizaines de logiciels installés sur le système, il est difficile de vérifier qu'ils sont tous bien à jour. Sommaire Update Checker, la...
[Windows 2000/XP] Update sans s'enregistrer VoirPour ne pas transmettre d'informations personnelles lors d'une mise à jour de Windows en utilisant Windows Update, il faut rajouter un clef dans le registre. Ouvrez la base de registre : Démarrer > Exécuter et tapez...
Update failed avg free VoirLorsque vous souhaitez mettre à jour votre antivirus AVG Free, celui-ci affiche le message suivant : update failed , the connection with update server has failed La traduction de ce message est la suivante : la mise a jour a échoué, votre...
Télécharger Update Checker VoirVous avez un peu marre de recherche les mises à jour de vos logiciels un par un ? Update Checker est là pour le faire à votre place. En effet, ce logiciel permet de trouver la liste des logiciels installés sur votre PC ainsi que leurs versions...
Télécharger Updater VoirSi vous avez remarqué, les logiciels proposent souvent des mises à jour régulières. Updater est un programme permettant d'effectuer une mise à jour d'un environnement logiciel. Il fonctionne à partir d’un ou plusieurs scripts qu'il peut...

1

avion-f16, le 12 nov 2009 à 22:42:33

Tout est dans l'erreur ...

if (isset($_POST['bloquer'])) {
    $donnees = mysql_fetch_array($reponse);
    $lock = 0;
    $unlock = 1;
    $query_lock = mysql_query('UPDATE forum_'.$_GET['titre'].' SET lock = '.$lock.' WHERE titre="'..$donnees['titre'].'") or die (mysql_error());

    if($query_lock == true) {
        echo '<center> La discussion '.$donnees['titre'].' a bien été bloquée !</center>'."\n";
    }
} 
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.

Répondre à avion-f16

2

aneantisseur, le 12 nov 2009 à 22:47:52

J'ai fait ce que tu as écrit, mais ca me met :

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 'lock = 0 WHERE titre="L'esprit d'Ultra Vomit"' at line 1

Répondre à aneantisseur

3

avion-f16, le 12 nov 2009 à 22:49:32

J'ai oublié quelque-chose :

if (isset($_POST['bloquer'])) {
    $donnees = mysql_fetch_array($reponse);
    $lock = 0;
    $unlock = 1;
    $query_lock = mysql_query('UPDATE forum_'.$_GET['titre'].' SET lock = '.$lock.' WHERE titre="'..$donnees['titre'].'"') or die (mysql_error());

    if($query_lock == true) {
        echo '<center> La discussion '.$donnees['titre'].' a bien été bloquée !</center>'."\n";
    }
} 
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.

Répondre à avion-f16

4

aneantisseur, le 12 nov 2009 à 22:50:49

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 'lock = 0 WHERE titre="L'esprit d'Ultra Vomit"' at line 1

Toujours ^^

Répondre à aneantisseur

5

avion-f16, le 12 nov 2009 à 22:53:57

Après le WHERE, j'ai mis deux points ...
Je penses que cette fois on est à la bonne Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu­ lui dis de faire.

Répondre à avion-f16

6

aneantisseur, le 12 nov 2009 à 22:55:09

Quand je met les deux points, il me met une parse error

Répondre à aneantisseur

7

avion-f16, le 12 nov 2009 à 22:56:58

Justement, il n'en faut pas. Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu­ lui dis de faire.

Répondre à avion-f16

8

aneantisseur, le 12 nov 2009 à 22:58:46

Si je veux qu'il n'y en ait pas, je dois enlever un des deux points.

Répondre à aneantisseur

9

avion-f16, le 12 nov 2009 à 23:00:07

Oui, il doit en rester qu'un seul.

if (isset($_POST['bloquer'])) {
    $donnees = mysql_fetch_array($reponse);
    $lock = 0;
    $unlock = 1;
    $query_lock = mysql_query('UPDATE forum_'.$_GET['titre'].' SET lock = '.$lock.' WHERE titre="'.$donnees['titre'].'"') or die (mysql_error());

    if($query_lock == true) {
        echo '<center> La discussion '.$donnees['titre'].' a bien été bloquée !</center>'."\n";
    }
} 
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.

Répondre à avion-f16

10

aneantisseur, le 12 nov 2009 à 23:01:48

Oui, et quand il n'en reste qu'un, ca me met :
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 'lock = 0 WHERE titre="L'esprit d'Ultra Vomit"' at line 1

Répondre à aneantisseur

11

avion-f16, le 12 nov 2009 à 23:21:19

if (isset($_POST['bloquer'])) {
    $donnees = mysql_fetch_array($reponse);
    $lock = 0;
    $unlock = 1;
    $query_lock = mysql_query('UPDATE forum_'.$_GET['titre'].' SET lock = "'.$lock.'" WHERE titre = "'.$donnees['titre'].'"') or die (mysql_error());

    if($query_lock == true) {
        echo '<center> La discussion '.$donnees['titre'].' a bien été bloquée !</center>'."\n";
    }
} 
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.

Répondre à avion-f16

12

aneantisseur, le 12 nov 2009 à 23:23:30

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 'lock = "0" WHERE titre="L'esprit d'Ultra Vomit"' at line 1

Ca commence a devenir compliqué ^^

Répondre à aneantisseur

13

avion-f16, le 12 nov 2009 à 23:24:47

Enfait le problème est simple : tu n'utilises pas addslashes donc l'apostrophe dans "L'esprit" fou le bordel. Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.

Répondre à avion-f16

14

 aneantisseur, le 12 nov 2009 à 23:25:33

Ouai, je dois y aller, je ferais ca demain ^^
Merci en tout cas :)

Répondre à aneantisseur