Page 1 sur 1

fonction INSERT INTO

Posté : 26 févr. 2013, 17:15
par damdam
Bonjour,

je suis débutant en php et je me heurte à une réaction bizzar de mon serveur...

mon hébergeur (oxito) dispose de phpmyadmin et tout fonctionne normalement lorsque je tape la commande sql: INSERT INTO legalbasis test VALUES ('test4', 'test4', '2010-01-01', NULL)

(l'enregistrement se crée)

Par contre, via le code suivant, qui produit le même ordre que ci-dessus (en récupèrant les données d'un formulaire), mysql_query() refuse de le passer - et j'obtiens une erreur...

je ne comprends pas cette différence de comportement, avec une même commande.

Quelqu'un pourrait-il m'aider?

D'avance merci!

<?php
echo "nom: " . $_POST["nom"]."<br>";
echo "prénom: " . $_POST["prenom"]."<br>";
echo "date de naissance: " . $_POST["date_de_naissance"]."<br>";

$strSQL = "INSERT INTO test VALUES ('";
$strSQL = $strSQL . $_POST["nom"] . "', '";
$strSQL = $strSQL . $_POST["prenom"] . "', '";
$strSQL = $strSQL . $_POST["date_de_naissance"] . "', ";
$strSQL = $strSQL . "NULL)<br>";

echo $strSQL;

// Connect to database server
mysql_connect("localhost", "username", "password") or die ('<font color=red>erreur de connexion au serveur</font>');
// Select database
mysql_select_db("table") or die ('<font color=red>erreur de connexion à la base de données</font>');
// The SQL statement is executed
mysql_query($strSQL) or die ('<font color=red>erreur de requête</font>');
// Close the database connection
mysql_close();
?>

Re: fonction INSERT INTO

Posté : 26 févr. 2013, 17:23
par damien_55
$strSQL = "INSERT INTO test (id, nom, prenom, date_de_naissance, champ) VALUES ('','".$_POST['nom']."', '".$_POST['prenom']."', '".$_POST['date_de_naissance']."', NULL);

Re: fonction INSERT INTO

Posté : 26 févr. 2013, 17:41
par damdam
Merci infiniment! je vais prendre le temps de voir ce que ma structure avait de faux mais je vous suis très reconnaissant pour votre aide!!!

Re: fonction INSERT INTO

Posté : 26 févr. 2013, 21:12
par sirakawa
Un test utile consiste à copier le résultat du echo($requete)
et à le coller dans PHPadmin.