ja' une requette
$reslute='1,1,1111 1,1,2222 1,1,3333 1,1,4444';
je veux enregistrer chaque partie dans une ligne d'une table
exemple
id ///// libelle
1 1,1,1111 les enregistrements
2 1,1,2222
3 1,1,3333
4 1,1,4444
merci
j'attend vos réponses
ja' une requette
$reslute='1,1,1111 1,1,2222 1,1,3333 1,1,4444';
je veux enregistrer chaque partie dans une ligne d'une table
exemple
id ///// libelle
1 1,1,1111 les enregistrements
2 1,1,2222
3 1,1,3333
4 1,1,4444
merci
j'attend vos réponses
Au plus propre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $reslute = '1,1,1111 1,1,2222 1,1,3333 1,1,4444'; $morceaux = preg_split('/\s/', $reslute, -1, PREG_SPLIT_NO_EMPTY); $insertions = array(); foreach ($morceaux as $k => $m) { array_push($insertions, "($k, '$m')"); } if ($insertions) { mysql_query('INSERT INTO ma_table(id, libelle) VALUES ' . implode(',', $insertions)) or die(mysql_error()); }
merci le code ça marche bien
mais je veux le clé primaire id est auto incriment
merci encore
par exemple si je execute la requette plusieure fois il me donne
Duplicata du champ '0' pour la clef 1
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $reslute = '1,1,1111 1,1,2222 1,1,3333 1,1,4444'; $morceaux = preg_split('/\s/', $reslute, -1, PREG_SPLIT_NO_EMPTY); $insertions = array(); foreach ($morceaux as $m) { array_push($insertions, "(NULL, '$m')"); } if ($insertions) { mysql_query('INSERT INTO ma_table(id, libelle) VALUES ' . implode(',', $insertions)) or die(mysql_error()); }
ce code ça marche pas
je veux chaque fois que j'execute la requette le clé primaire est auto incriment
par exemple
1 1,1,1111
2 1,1,2222
3 1,1,3333
4 1,1,4444
5 1,1,1111
7 1,1,2222
8 1,1,3333
si j'execute plusiuers fois
1 1,1,1111
2 1,1,2222
3 1,1,3333
4 1,1,4444
5 1,1,1111
7 1,1,2222
8 1,1,3333
9 1,1,1111
10 1,1,2222
11 1,1,3333
12 1,1,4444
13 1,1,1111
14 1,1,2222
15 1,1,3333
Au plus court :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?php $reslute = '1,1,1111 1,1,2222 1,1,3333 1,1,4444'; $valeur = '(\'' . str_replace(' ', '\'),(\'', $reslute) . '\')'; $sql = 'INSERT INTO ma_table (libelle) VALUES ' . $valeur; ?>
merci bien le code ça marche bien
a bientot
Partager