2013-07-01 10 views
-1

J'ai la liste d'élèves à partir de 1 table, elle a 5 fiches. Maintenant j'ai ajouté une case à cocher à la fin de chaque rangée. Maintenant, ce que je veux faire est d'insérer toutes les données dans une nouvelle table, y compris la valeur de la case à cocher comme 1 si cochée et 0 pour non cochée. nouvelle table aura une nouvelle colomn date_id qui sera identique pour tous les 5 entrées, et d'autres colonnes restera même que dans le tableau 1. comment faire s'il vous plaît aiderInsérer plusieurs enregistrements dans mysql

+1

Avez-vous essayé quelque chose .. Montrez-nous. – Rafee

Répondre

1

Avez-vous dire insérer plusieurs lignes dans MySQL avec une seule requête alors: -

Insert into table table_name Values (date_id,values_of_a),(date_id,values_of_a),(date_id,values_of_a)... n number of records; 

Les valeurs a, b, c colonnes vous déjà avoir de sélectionner la requête de la table 1.

+0

non, vous ne pouvez pas le faire comme ça. insérer toutes les entrées dans une seule requête d'insertion ne sera pas possible, vous devrez exécuter des requêtes d'insertion pour chacune d'entre elles dans une boucle. –

+1

@AshishChopra Vous avez tort, http://dev.mysql.com/doc/refman/5.5/fr/insert.html Vérifiez vos faits. "Les instructions INSERT qui utilisent la syntaxe VALUES peuvent insérer plusieurs lignes.Pour ce faire, ajoutez plusieurs listes de valeurs de colonnes, entre parenthèses et séparées par des virgules Exemple: INSERT INTO nom_table (a, b, c) VALEURS (1, 2,3), (4,5,6), (7,8,9); " – allen213

+0

@ allen213 hey merci de me corriger, j'avais tort. –

0

pour exécuter un/pour chaque boucle pour liste entière et d'exécuter la requête d'insertion pour chaque enregistrement de ce tableau de liste

+0

faire une réponse descriptive. – DevZer0

0

Vous devez faire quelque chose comme:

INSERT INTO new_table (col1, col2, col3) select col1, col2, custom_value from old_table; 

Note:

  • Le nombre de colonnes doit correspondre.
  • Vous pouvez spécifier des valeurs personnalisées dans la requête de sélection.
0

Si vous voulez en utilisant la requête unique puis

Insérer dans la table des valeurs de your_table_name (de date_id, valeurs1), (date_id, VALUES2), (date_id, VALUES3), (date_id, VALUES4), (date_id, valeurs5)

ou

magasin toute valeur dans la liste et exécuter boucle pour chaque enregistrement dans cette liste

1

Vous pouvez essayer ceci:

<input type="checkbox" name="check[]" value="<?=(isset($table1Id))?$table1Id:'0'?>" /> 

<?php 
    foreach($_POST['check'] as $each){ 
     if($each != "0"){ 
      $table1Id = $each; 
      ### retrive the details from table 1 here based on pk "$table1Id" and insert into table 2 

     } 
    } 
?> 
Questions connexes