Bonjour à tous,
Cela fait maintenant trois jours que je cherche a copier les données d'un champ a un autre en utilisant une variable dans ma requête SQL, cependant je sèche à present...
J'ai fais plusieurs recherches sur le net ainsi que demander aux personnes autour de moi mais sans résultat.
Voici le problème :
Les tables concernés :
characters.sql (lien)
seven_signs.sql (lien)
Le code :
<?php mysql_connect("localhost", "root", ""); mysql_select_db("ma_base"); $id_perso = mysql_query("SELECT obj_Id FROM characters") or die(mysql_error()); while ($id_persos = mysql_fetch_array($id_perso) ) { echo $id_persos['obj_Id']; echo "<br />"; } mysql_query("INSERT INTO seven_signs (char_obj_id, cabal, seal, red_stones, green_stones, blue_stones, ancient_adena_amount, contribution_score) VALUES (`".$id_perso."`, 'dawn', '1', '0', '0', '0', '0', '0')") or die(mysql_error()); mysql_close(); ?>
Le résultat actuel :
http://nwn2-artemis.fr/amo_req_sql.php (voir l'erreur à la fin, je ne vois pas du tout ce que c'est...)
Apres avoir soumis le problème a un ami nous nous sommes dit qu'en fait la dernière requête devait être répétée en boucle pour crée chaque entrée, peut-être avec un "while", mais nous n'avons aucune idée de quelle façon nous y prendre...
Mais nous avons aussi été confronté au problème du "oui mais si on fait une boucle, ca va s'arreter quand? lorsqu'il aura fait le tour et qu'on aura une erreur disant que l'entrée est dupliquée?" si oui ce n'est pas vraiment un souci, l'important etant que les tables soient copiés.
Le résultat souhaité :1- Récupérer les données du champ "obj_Id" de ma table "characters" via la variable $id_perso (dans l'etat actuel du code). 2- Copier (juste copier, pas déplacer) ces données dans le champ "char_obj_id" de ma table "seven_signs".
Il me semble avoir lu quelque part que les données reçue avec mysql_query() n'etaient pas directement exploitable, j'ai donc tenter un "bricolage" qui c'est finalement averer inutile, je ne vous ferais pas part de l'horreur donc .
A bientôt et merci d'avance pour vos réponses !!
Amo.