JeuWeb - Crée ton jeu par navigateur
probleme avec explode - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : probleme avec explode (/showthread.php?tid=327)



probleme avec explode - mloolm - 14-10-2006

salut
j ai une variable ( $montableau ) de style
Code :
112907 - Naruzo - 0 - 1950
341881 - Krak De L'atlantique - 0 - 5764
465191 - Yrizée - 0 - 46
277722 - Liamykai - 0 - 511
1794460 - Wolfhood - 0 - 63095
189804 - Malkavian - 0 - 13044
270005 - Aletheia - 0 - 0
....
....
je voudrai recuperer ces données pour les integrer dans ma base de donnée
mais ca me marque
Code :
112907 - Naruzo - 0 - 1950
erreurYou have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1

voici mon code
Code PHP :
<?php
require "conf.php3";
mysql_connect("$sql_serveur","$sql_login","$sql_pass");
mysql_select_db("$sql_bdd");

for (
$i = 0; $i < count($montableau); $i ++)
{
mysql_query($montableau[$i]) or die('erreur'.mysql_error());
}
$toto = explode('-',$ligne);
mysql_query("insert into matable value(trim($toto[0]),trim($toto[1]),trim($toto[2]),trim($toto[3])") or die('erreur');
?>

quelqu un pourait il m aider
merci d avance
@+
mloolm


RE: probleme avec explode - naholyr - 14-10-2006

Heu, tu essaies d'envoyer une requête SQL à ta base de données qui est celle-ci (par exemple) : 112907 - Naruzo - 0 - 1950 je pense que l'erreur est évidente Smile


RE: probleme avec explode - mloolm - 14-10-2006

:heuuu: pour moi c est pas evident
pourtant je fais 1
Code PHP :
<?php 
$toto
= explode('-',$ligne);

de ma variable
donc je ne comprend pas desolé si je je suis 1 debutant:rip:


RE: probleme avec explode - Armage - 14-10-2006

mloolm a écrit :
Code PHP :
<?php
mysql_query
("insert into matable value(trim($toto[0]),trim($toto[1]),trim($toto[2]),trim($toto[3])") or die('erreur');
?>

Pour ton premier mysql_query, j'ai la même opinion que Naholyr.

Pour le second mysql_query, j'aurais écris

mysql_query("insert into matable values (trim($toto[0]), trim($toto[1]), trim($toto[2]), trim($toto[3]))") or die ('erreur') ;

Et je préfère, pour plus de lisibilité écrire

Code PHP :
<?php 
$sql
= "INSERT INTO matable VALUES (trim($toto[0]), trim($toto[1]), trim($toto[2]), trim($toto[3]))" ;
$result = mysql_query($sql) ;

Bon courage,

--
Armage


RE: probleme avec explode - pascal - 14-10-2006

il ne faut pas oublier les apostrophes autour des champs de type texte, et afficher la requete lorsque ça plante, dans le die.

Bon débuggage!

A+

Pascal