insertion de deux array dans la base de donnée

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : insertion de deux array dans la base de donnée

Re: insertion de deux array dans la base de donnée

par Berzemus » 12 avr. 2010, 16:41

Et juste une petite parenthèse: il est bien plus rapide d'exécuter une grosse requête (voir plusieurs en une fois, en oubliant pas de marquer la séparation entre les requêtes avec le point-virgule) qu'un grand nombre de petites requêtes.

Ceci dit, j'utiliserais les requêtes préparées quand il s'agit d'itérer sur un tableau et d'en insérer le contenu dans une DB.

Re: insertion de deux array dans la base de donnée

par zeus » 12 avr. 2010, 16:24

Il y a un très gros problème de conception de ton code.
Tu utilises array_map pour parcourir tes tableaux, jusque là, pourquoi pas. Mais tu cette méthode ne peut pas lancer X fois une requête SQL.

Pour cela, il n'y a guère que 2 solutions :
1/ construire une requête qui insère autant que ligne que nécessaire
2/ exécuter autant de requêtes que de lignes à insérer.

Toi, tu fais un gros amalgame entre le PHP est le SQL.
Essaye de reprendre ton code de 0, en prenant en compte ce que je viens de te donner.

Re: insertion de deux array dans la base de donnée

par stealth35 » 10 avr. 2010, 18:49

avec un séparateur ?

Re: insertion de deux array dans la base de donnée

par leader » 10 avr. 2010, 18:23

je veux que chaque case de array s'enregistre dans un ligne

Re: insertion de deux array dans la base de donnée

par stealth35 » 10 avr. 2010, 18:17

avec serialize :wink: , tu devras faire un coup de unserialize apres

insertion de deux array dans la base de donnée

par leader » 10 avr. 2010, 17:23

bonjour
j'ai fait une requéte pour pouvoir enregistrer deux array dans la base de donné d'un seul coup mais le problème que j'ai il ne mit dans la table que la première valeur des deux array
voila la requête
$array_temp = array_keys($tableau_mots_occurences);
mysql_query("INSERT INTO mot_doc VALUES ('',('".implode(',', array_map('intval', $array_temp))."'),'$doc','$emplacement',('".implode(',', array_map('intval', $tableau_mots_occurences))."'))")
comment faire pour pouvoir enregistrer le contenu des array?
s'il vous plais
merci