Problème PHP/MySQL : concaténation
Résolu
polarbird
Messages postés
104
Date d'inscription
Statut
Membre
Dernière intervention
-
polarbird Messages postés 104 Date d'inscription Statut Membre Dernière intervention -
polarbird Messages postés 104 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un problème de concaténation voici mon code :
edit_tuto_ok.php
Quand j'exécute ce code depuis ce formulaire
edit_tuto.php
j'obtiens ce message de la part de MySQL :
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'update = '..',vues = '.0.' WHERE id = '.2.'' at line 1
Merci de m'aider car vraiment je m'arrache les cheveux !
Cordialement,
polarbird
J'ai un problème de concaténation voici mon code :
edit_tuto_ok.php
<html> <head> <link href="../style.css" rel="stylesheet" title="Style" /> <title>Panel d'administration - Modifier tuto</title> </head> <body> <h1>Modifier tuto</h1> <?php //connection au serveur $cnx = mysql_connect( "", "", "" ) ; $db = mysql_select_db( "" ) ; //sélection de la base de données: $id = $_POST["id"]; $titre=$_POST["titre"]; $auteur=$_POST["auteur"]; $niveau=$_POST["niveau"]; $barre=$_POST["barre"]; $tuto=$_POST["tuto"]; $timestamp=$_POST["timestamp"]; $update=$_POST["update"]; $vues=$_POST["vues"]; $datasql = "UPDATE tuto SET id = '.$id.',titre = '.$titre.',auteur = '.$auteur.',niveau = '.$niveau.',barre = '.$barre.',tuto = '.$tuto.',timestamp = '.$timestamp.',update = '.$update.',vues = '.$vues.' WHERE id = '.$id.' " ; $requete = mysql_query($datasql, $cnx) or die( mysql_error() ) ; if($requete) { echo("<p>La modif est faite</p>") ; } else { echo("La modification à échouée") ; } ?> </body> </html>
Quand j'exécute ce code depuis ce formulaire
edit_tuto.php
<html> <head> <link href="../style.css" rel="stylesheet" title="Style" /> <title>Panel d'administration - Modifier tuto</title> <script language="javascript" type="text/javascript"> function insert_texte(texte) { //Emplacement var ou = document.getElementsByName("tuto")[0]; //Texte à insérer + espace var phrase = texte +""; //Contenu déjà présent + Texte à insérer ou.value += phrase; //Positionnement du curseur } </script> <script language="javascript" type="text/javascript"> function bascule(elem) { etat=document.getElementById(elem).style.display; if(etat=="none"){ document.getElementById(elem).style.display="block"; } else{ document.getElementById(elem).style.display="none"; } } </script> </head> <body> <?php $cnx = mysql_connect( "", "", "" ) ; $db = mysql_select_db( "" ) ; $id = $_GET["id"] ; $sql = "SELECT * FROM tuto WHERE id = ".$id ; $requete = mysql_query( $sql, $cnx ) ; if($result = mysql_fetch_object($requete)) { ?> <form action="edit_tuto_ok.php" method="post"> <input type="hidden" name="id" value="<?php echo($id) ;?>"> <input type="text" placeholder="Titre" name="titre" size="20" value="<?php echo($result->titre) ;?>"/><br /> <input type="text" placeholder="Auteur" name="auteur" size="20" value="<?php echo($result->auteur) ;?>" /><br /> <select name="niveau"> <option value="<?php echo($result->niveau) ;?>" selected><?php echo($result->niveau) ;?></option> <option value="Facile">Facile</option> <option value="Moyen">Moyen</option> <option value="Difficile">Difficile</option> </select><br /> <input type="text" value="<?php echo time(); ?>" name="update" size="20" readonly /> <input type="text" value="<?php echo($result->vues); ?>" name="vues" size="20" readonly /><br /> <input type="hidden" name="timestamp" value="<?php echo($result->timestamp); ?>"> <input type="range" name="barre" value="<?php echo($result->barre) ;?>" min="33.3" max="100" step="33.3" /><br /> <div style="border:1px solid white;width:200px;"> <a href="#" onclick="bascule('div1');return false;">Pratique</a> <div id='div1' style='display:none;font-size:12px;font-family:arial;color:white;'> <a href="#" onclick="insert_texte('<a href= target= ></a>')">URL</a> <a href="#" onclick="insert_texte('<br>')">Saut de ligne</a> <a href="#" onclick="insert_texte('<br />')">Alinea</a> <a href="#" onclick="inser_texte('<img src= title= ')">Image</a> </div></div> <div style="border:1px solid white;width:200px;"> <a href="#" onclick="bascule('div2');return false;">Polskie litery</a> <div id='div2' style='display:none;font-size:12px;font-family:arial;color:white;'> <a href="#" onclick="insert_texte('ą')">ą</a> <a href="#" onclick="insert_texte('ę')">ę</a> <a href="#" onclick="insert_texte('ó')">ó</a> <a href="#" onclick="insert_texte('ć')">ć</a> <a href="#" onclick="insert_texte('ł')">ł</a> <a href="#" onclick="insert_texte('ń')">ń</a> <a href="#" onclick="insert_texte('ś')">ś</a> <a href="#" onclick="insert_texte('ź')">ź</a> <a href="#" onclick="insert_texte('ż')">ż</a> <a href="#" onclick="insert_texte('Ą')">Ą</a> <a href="#" onclick="insert_texte('Ę')">Ę</a> <a href="#" onclick="insert_texte('Ó')">Ó</a> <a href="#" onclick="insert_texte('Ć')">Ć</a> <a href="#" onclick="insert_texte('Ł')">Ł</a> <a href="#" onclick="insert_texte('Ń')">Ń</a> <a href="#" onclick="insert_texte('Ś')">Ś</a> <a href="#" onclick="insert_texte('Ź')">Ź</a> <a href="#" onclick="insert_texte('Ż')">Ż</a> </div></div> <div style="border:1px solid white;width:200px;"> <a href="#" onclick="bascule('div3');return false;">Accents</a> <div id='div3' style='display:none;font-size:12px;font-family:arial;color:white;'> <a href="#" onclick="insert_texte('é')">é</a> <a href="#" onclick="insert_texte('É')">É</a> <a href="#" onclick="insert_texte('ç')">ç</a> </div></div> <textarea name="tuto" rows="30" cols="60" placeholder="Tuto" style="font-family:arial;font-size:12px;color:black;"><?php echo($result->tuto) ;?></textarea><br /> <input type="reset" value="Effacer"/> <input type="submit" value="Valider"/> </form> <?php } ?> </body> </html>
j'obtiens ce message de la part de MySQL :
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'update = '..',vues = '.0.' WHERE id = '.2.'' at line 1
Merci de m'aider car vraiment je m'arrache les cheveux !
Cordialement,
polarbird
A voir également:
- Problème PHP/MySQL : concaténation
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Expert php pinterest - Télécharger - Langages
- Php alert - Forum PHP
- Mysql a répondu : documentation connexion impossible : paramètres incorrects. - Forum Bases de données
2 réponses
la requête Mysql doit être comme ça :
on ne met pas de point (concaténation) parce que tu utilise des apostrophe et nom des guillemets ,
voici un exemple de l'utilisation de concaténation :
Dans le cas suivant on ne met pas de point de concaténation :
$datasql = "UPDATE tuto SET id = '$id',titre = '$titre',auteur = '$auteur',niveau = '$niveau',barre = '$barre',tuto = '$tuto',timestamp = '$timestamp',update = '$update',vues = '$vues' WHERE id = '$id' " ;
on ne met pas de point (concaténation) parce que tu utilise des apostrophe et nom des guillemets ,
voici un exemple de l'utilisation de concaténation :
$variable = "text = ".$text;
Dans le cas suivant on ne met pas de point de concaténation :
$variable = "text='$text' , valeur='$valeur' ..";