OVH Cloud OVH Cloud

contenu d'un array dans une table MySQL

2 réponses
Avatar
Olivier Masson
Bonjour,

actuellement je place le contenu de $texte[] dans une table texte de la
manière suivante :

$result = mysql_query("INSERT INTO trace VALUES
('$texte[1]','$texte[2]','$texte[3]');

$texte comportant ainsi une quinzaine d'élément et les élements se
présentant dans l'ordre des champs de la table MySQL.

Je suis bien conscient que c'est moche et je souhaiterais savoir comment
faire plus propre, en utilisant for ($c=0; $c < 16; $c++) par exemple.

Merci.

2 réponses

Avatar
CrazyCat
Olivier Masson wrote:
actuellement je place le contenu de $texte[] dans une table texte de la
manière suivante :

$result = mysql_query("INSERT INTO trace VALUES
('$texte[1]','$texte[2]','$texte[3]');


<?
$query = "INSERT INTO trace VALUES (";
for ($i = 0; $i < count($texte); $i++) {
$query .= "'$texte[$i]'";
if ($i < (count($texte) - 1)) $query .= ", ";
}
$query .= ")";
$result = mysql_query($query);
?>

--
Aide informatique: http://help-info.forumactif.com
Humour: http://www.chatfou.com
Tchattez en liberté: http://www.crazy-irc.net

Avatar
Olivier Masson

<?
$query = "INSERT INTO trace VALUES (";
for ($i = 0; $i < count($texte); $i++) {
$query .= "'$texte[$i]'";
if ($i < (count($texte) - 1)) $query .= ", ";
}
$query .= ")";
$result = mysql_query($query);
?>



Merci beaucoup car même si je ne m'attendais pas à ce genre de réponse,
cela me servira puisque je remplis également une autre table avec les
valeur de 16 à 20 de $texte[] :)

En fait, je voulais savoir il y avait une instruction permettant
d'insérer une valeur puis, plus tard, d'en insérer une autre à la suite
(comme si on avait laissé un pointeur, sans nommer le champ donc) ?