Problème INSERT variable

Eléphanteau du PHP | 15 Messages

10 déc. 2008, 00:06

Bonjour, j'ai un soucis d'insert avec une variable:
<?php
session_start();
include 'connexion.php';
$requete= "SELECT jour FROM calendar";
$res=mysql_query($requete) or die('Erreur SQL '.$requete.'<br>'.mysql_error());
     $donnee = mysql_result($res,0,'jour');
$donnee= $jour;
$maj= "INSERT INTO evenement (scoop) VALUES ('le jour  '.$donnee.' etc etc etc etc  ')";
mysql_query($maj);
include("page_membre.php");
?>
1) est-ce que la requete est bien formulée?
2) si oui, comment echapper correctement $donnee?
(j'ai aussi testé avec des doubles quotes mais ca donne rien non plus)
Modifié en dernier par Rouge le 11 déc. 2008, 00:18, modifié 1 fois.

Eléphant du PHP | 254 Messages

10 déc. 2008, 00:17

Salut,

1/ Une syntaxe correcte serait
$maj= "INSERT INTO evenement (scoop) VALUES ('le jour $donnee etc etc etc etc  ')"; 
ou
$maj= sprintf("INSERT INTO evenement (scoop) VALUES ('le jour %s etc etc etc etc  ')", $donnee=; 
2/ Tu récupere $donnee, puis tu l'écrase avec la variable $jour, avant de l'utiliser ndas ta requete, est ce correct ?

Eléphanteau du PHP | 15 Messages

10 déc. 2008, 01:09

pour le 1) ok, je m'en doutais un peu.

Mais alors, et sans trop vouloir abuser, pour le point 2):

le traitement de ma requete est donc foireux, comment faire mieux?
j'avais testé avec mysql_fetch_assoc mais cela affichait un message d'erreur :?

est ce que ceci serait mieux?

Code : Tout sélectionner

$jour = $donnee['jour']; $maj= "INSERT INTO evenement (scoop) VALUES ('le jour $jour etc etc etc etc ')";

Eléphant du PHP | 254 Messages

10 déc. 2008, 01:49

ben c'est toi qui voit, juste vérifie bien ce que tu as dans donnée, en l'affichant a l'écran, ou alors affiche carrément ta requete pour la vérifier ...

Eléphanteau du PHP | 15 Messages

11 déc. 2008, 00:17

c'est bon ca marche :lol: