-1
votes

Insérer plusieurs données avec requête MySQL PHP

Je veux télécharger des marques des élèves .. Donc, si j'utilise une boucle pour insérer des marques de plusieurs étudiants.

est-ce que cela fait la charge sur le serveur ?? Parce que la requête exécute plusieurs fois. Y a-t-il un autre moyen d'insérer plusieurs données sans boucle. xxx


2 commentaires

Je conseillerais d'inclure du code dans votre question. De cette manière, vous augmenterez les chances d'obtenir une réponse et de réduire les chances d'obtenir votre question pavillon et supprimé.


J'ai ajouté le code ... s'il vous plaît vérifier .. Je pense que lorsque j'ajoute 200 étudiants à la fois ..by utilise une boucle, il effectue une charge sur serveur.est leur solution alternative?


3 Réponses :


1
votes

Oui, vous pouvez insérer plusieurs lignes dans une seule instruction SQL, comme:

insert into tbl (col1, col2)
values (row1_val1, row1_val2), (row2_val1, row2_val2) [...]


0 commentaires

1
votes

Par exemple, ce bloc de code vous pouvez remplacer par votre propre code.

        $codes = [];
        for ($i = 0; $i < $count; $i++) {
            $codes[$i]['code'] = $this->genUuid();
            $codes[$i]['secret'] = uniqid();
            $codes[$i]['day'] = request('day');
            $codes[$i]['label'] = request('label');
            $codes[$i]['state'] = 1;
            $codes[$i]['created_at'] = Carbon::now();
            $codes[$i]['updated_at'] = Carbon::now();
        }

        Code::insert($codes);


0 commentaires

2
votes

Bien voici la solution

    <?php 
    $roll_no=$_POST['roll_no'];
    $lenght=count($roll_no);
    $department=$_POST['department'];
    $semester=$_POST['semester'];
    if($course!="" && $department!="" && $semester!="")
    {
        for($i=0;$i<$length;$i++)
        {
$q="INSERT INTO allocoursestudent(roll_no,department,semester) values($roll_no[$i],$department[$i],$semester[$i])";

            if(mysqli_query($con,$q))
               {
                 $response=  "Data inserted";
               }else
               {
               $response=  "Error";
               }
        }
        echo($response);
    }else
    {
        echo("Enter Data first");
    }


0 commentaires