Ses derniers messages sur les forums
Hello !
Loooooooooooooool !!
@+...
One Love, One Heart, One Unity.
Reuh ...
Koboneil >> Gni ? Je vois kedal ... c'est où ??
@+...
One Love, One Heart, One Unity.
Hello !
JeyJey >> La fonction mail() ou le server SMTP local pour envoyer des emails ?
@+...
One Love, One Heart, One Unity.
Hello !
Hé bé ... baisse ta kilote ci moi ki pilot !
mdr ...
@+...
One Love, One Heart, One Unity.
One Love, One Heart, One Unity.
Reuh ...
Oh pitin !
C'est koi ces gonzes qui font des scripts n'importe nawak et qui balancent ça sur le net ?
Le problème venait de :
fgetcsv ($handle, 1000, ",");
En fait c'est fgetcsv ($handle, 0, ",");
Je pense que comme ça la lecture du fichier.csv commence à l'octet 0 ou un truc du genre ...
Merci LA_GLOBULE.
@+...
One Love, One Heart, One Unity.
Reuh ...
Merci LA_GLOBULE.
Bon j'ai modifié le script avec le echo $sql pour la requête et j'ai compris l'erreur.
<?
// ... bla bla ...
$handle = fopen ("./file.csv","r");
fgetcsv ($handle, 1000, ",");
while ($data = fgetcsv ($handle, 1000, ",")) {
print $data[0] . "\n";
// Préparation de la requête d'insertion
$sql = "INSERT INTO csv VALUES (".$data[0].")";
echo $sql;
// on exécute la requête
$result = mysql_query($sql);
// mysql_query("INSERT INTO csv (id,label,artiste,titre) VALUES ('".$data[0]."')");
printf (" - le dernier enregistrement a pour id %d\n", mysql_insert_id());
echo "\n";
echo "\n";
//ce qui est echo c'est juste pour savoir que le script fonctionne...
}
fclose ($handle);
// on ferme la connexion à la base de données.
mysql_close ();
?>
Mais j'ai toujours le problème pour mon premier enregistrement qui ne se fait pas voilà ce que donne l'echo de la requête (echo $sql;) :
'2','label2','artiste2','titre2' INSERT INTO csv VALUES ('2','label2','artiste2','titre2') - le dernier enregistrement a pour id 0
'3','label3','artiste3','titre3' INSERT INTO csv VALUES ('3','label3','artiste3','titre3') - le dernier enregistrement a pour id 0
'4','label4','artiste4','titre4' INSERT INTO csv VALUES ('4','label4','artiste4','titre4') - le dernier enregistrement a pour id 0
'5','label5','artiste5','titre5' INSERT INTO csv VALUES ('5','label5','artiste5','titre5') - le dernier enregistrement a pour id 0
Les données insérées commencent à la deuxime ligne de mon fichier file.csv :
"'1','label1','artiste1','titre1'"
"'2','label2','artiste2','titre2'"
"'3','label3','artiste3','titre3'"
"'4','label4','artiste4','titre4'"
"'5','label5','artiste5','titre5'"
J'ai essayé l'auto increment, ça donne kedal ...
Pourquoi il prend pas la première ligne de mon fichier.csv ??
@+...
One Love, One Heart, One Unity.
Hello !
J'ai un souci avec un script que j'essaye de faire fonctionner et qui est censé insérer dans ma base des données présentes dans un fichier.csv (comma separated values).
Voilà la structure de ma table csv :
CREATE TABLE `csv` (
`id` int(5) NOT NULL default '0',
`label` varchar(40) NOT NULL default '',
`artiste` varchar(40) NOT NULL default '',
`titre` varchar(40) NOT NULL default '',
UNIQUE KEY `id` (`id`)
) TYPE=MyISAM;
Voila le contenu du fichier file.csv :
"1";"label1";"artiste1";"titre1"
"2";"label2";"artiste2";"titre2"
"3";"label3";"artiste3";"titre3"
"4";"label4";"artiste4";"titre4"
"5";"label5";"artiste5";"titre5"
Voila mon script :
<?
$base = mysql_connect ('localhost', 'root', '***');
mysql_select_db ('test', $base) ;
// Préparation de la requête de suppression
$sql = 'DELETE * FROM csv';
// on exécute la requête
$result = mysql_query($sql);
$handle = fopen ("./file.csv","r");
fgetcsv ($handle, 1000, ",");
while ($data = fgetcsv ($handle, 1000, ",")) {
print $data[0] . "\n";
mysql_query("INSERT INTO csv (id,label,artiste,titre) VALUES ('".$data[0]."')");
printf (" - le dernier enregistrement a pour id %d\n", mysql_insert_id());
echo "\n";
echo "\n";
//ce qui est echo c'est juste pour savoir que le script fonctionne...
}
fclose ($handle);
// on ferme la connexion à la base de données.
mysql_close ();
?>
Quand je lance le script, il affiche ça :
2 - le dernier enregistrement a pour id 0
3 - le dernier enregistrement a pour id 0
4 - le dernier enregistrement a pour id 0
5 - le dernier enregistrement a pour id 0
Non seulement il n'affiche rien pour l'id 1, mais en plus il n'insère rien dans ma base.
Quelqu'un sait pourquoi ?
@+...
One Love, One Heart, One Unity.
Reuh ...
Tout à fait ...
/me commence à perdre patiente (surtout avec les histoires de session_stat(); set_cookie et sorties html) ...
@+...
One Love, One Heart, One Unity.
Hello !
Excellent !
En plus sur le site y'a plein d'autres jeux !!
Thnx Zebden.
@+...
One Love, One Heart, One Unity.