Problème avec INSERT

Résolu
Jinjo -  
Xil Messages postés 350 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai un problème avec ma fonction INSERT, elle fonctionne sous WAMP mais lorsque j'essaye sur mon serveur (Win2k3 Sp2 - Apache 2.0.63 / PHP 5.2.5 / MySQL 5.0.45 / PHPmyAdmin 2.11.4 - WAMP a les mêmes versions) il ne m'affiche rien dans ma base de donnée, voici le code, et comme je vous l'ai dit plus haut, ce code marche bien sur WAMP. Ma page test_1.php :

<form method="post" action="test_1.php">
<table width="200" border="0">
<tr>
<td>test_1</td>
<td><input type="text" name="test_1" /></td>
</tr>
<tr>
<td>test_2</td>
<td><input type="text" name="test" /></td>
</tr>
</table>
<input type="submit" value="envoyer"/>
</form>
<?php
$test1 = $_POST['test_1'];
$test2 = $_POST['test'];
echo "$test1";
echo "$test2";

mysql_connect('localhost' ,'root', 'monmot2pass') or die("Impossible de se connecter...");
mysql_select_db('test');

mysql_query("INSERT INTO t_test(id_test,test_1,test_2) values('','$test1','$test2')");
mysql_close();
?>


Voilà donc j'espère que quelqu'un pourrait m'aider, merci !

7 réponses

sfel Messages postés 1640 Date d'inscription   Statut Membre Dernière intervention   430
 
juste ces coordonnées sont elles bonnes ??
'localhost' ,'root', 'monmot2pass'

as tu bien la même structure sur ta base de données et dans ta base 'test'
?
0
Jinjo
 
Oui tout à fait !
0
Jinjo
 
Je pense que c'est surment un problème dans la configuration des fichiers ? httpd.conf ? php.ini ou encore config.inc.php ??? Ce serait surement que là de-dans car le code fonctionne sous WAMP ... :(
0
sfel Messages postés 1640 Date d'inscription   Statut Membre Dernière intervention   430
 
tu peux copier les fichiers de conf de appache depuis l'un vers l'autre.
0
Jinjo
 
Oui mais je préfère pas ça risque de tout faire planter :S non ?
0
sfel Messages postés 1640 Date d'inscription   Statut Membre Dernière intervention   430 > Jinjo
 
sauvegarde tes fichiers initiaux par sécurité et test.

Si ca ne marche pas, tu remet ceux d'origine.
0
Xil Messages postés 350 Date d'inscription   Statut Membre Dernière intervention   257
 
Bonjour,

Tu peux vérifier s'il y'a eu des erreurs pour exécuter ta requête en modifiant un peu ton code comme suit :
$result = mysql_query("INSERT INTO t_test(id_test,test_1,test_2) values('','$test1','$test2')");

if($result == false){
    echo mysql_errno() . ": " . mysql_error() ;
}

mysql_close(); 


mysql_query() renvois la valeur 'false' si la requête n'a pas été exécutée.


C'est plus facile à comprendre pourquoi quelque chose ne fonctionne pas quand on a un message d'erreur :)
0
Jinjo
 
Je teste vite ça je vous tiens au courant ! merci
0
Jinjo > Jinjo
 
Voilà j'ai essayé ton code, voici la réponse qui me donne :

1366: Incorrect integer value: '' for column 'id_test' at row 1
0
Xil Messages postés 350 Date d'inscription   Statut Membre Dernière intervention   257 > Jinjo
 
id_test est de type INT, et j'imagine que si tu ne lui donne pas de valeur, c'est que tu as voulu le déclarer en AUTO_INCREMENT, mais manifestement ce n'est pas le cas.

Vérifie la propriété AUTO_INCREMENT de ton champ id_test.

Eventuellement en SQL:
ALTER TABLE t_test CHANGE id_test id_test INT(15) NOT NULL AUTO_INCREMENT;
0
Jinjo > Xil Messages postés 350 Date d'inscription   Statut Membre Dernière intervention  
 
Hum, c'est louche car j'ai recopier le code SQL chez WAMP lorsque ça fonctionnait ils ont donc logiquement la même structure mais je vais testé ce que tu m'as dit.
0
Jinjo > Jinjo
 
ça n'as pas arranger le problème toujours rien dans la BDD .. Comme je disais je pense que c'est un problème lors de l'installation d'apache etc.. J'ai surment mal configuré qqch... Je pense utiliser WAMP et lié mon apache avec. Si c'est possible
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Xil Messages postés 350 Date d'inscription   Statut Membre Dernière intervention   257
 
Tu peux faire un dump SQL de la structure de ta table et nous le montrer ?

Fais des test de requête dans un script à part, ca évitera les problèmes dus au formulaire ou autre.
essaye juste ceci :
<?php
mysql_connect('localhost' ,'root', 'monmot2pass') or die("Impossible de se connecter...");
mysql_select_db('test'); 

$result = mysql_query("INSERT INTO t_test(test_1,test_2) values('test1','test2')");

if($result == false){
    echo mysql_errno() . ": " . mysql_error() ;
}

mysql_close(); 
?>
0
Jinjo
 
Problème résolu, j'ai réinstaller WAMP5, et supprimer les anciens fichiers.
0
Xil Messages postés 350 Date d'inscription   Statut Membre Dernière intervention   257
 
Et pour la table, tu as réimporté exactement la même et c'est passé ?
0