sql >> Database teknologi >  >> RDS >> Mysql

PHP PDO-indsæt ved hjælp af loop

Du behøver ikke at binde dine variabler. Jeg har gjort dette før med lignende kode. Det er dog svært at sige, hvad der går galt. Får du en undtagelse - hvis ja, hvad er det?

Det eneste, jeg ser forkert, er, at du har din forberedelse inde i løkken... burde være mere som:

try {
         $conn = new PDO("mysql:host=$host;dbname=$dbName", $un, $pw);
         echo 'Connected to database<br>';

        $sql = "INSERT INTO studentData (originallyAddedOn, inputMethod, studentFirst, studentLast, studentStreet, studentCity, studentState, studentZip, studentDOB, studentGender, studentGrade, schoolName, schoolStreet, schoolCity, schoolState, schoolZip, schoolContactName, schoolContactTitle, schoolContactEmail, schoolContactPhone) VALUES (:originallyAddedOn, :inputMethod, :studentFirst, :studentLast, :studentStreet, :studentCity, :studentState, :studentZip, :studentDOB, :studentGender, :studentGrade, :schoolName, :schoolStreet, :schoolCity, :schoolState, :schoolZip, :schoolContactName, :schoolContactTitle, :schoolContactEmail, :schoolContactPhone)";

        // prepare once... exceute many :-)
        $q = $conn->prepare($sql); 

        foreach($studentDataArray as $student) {
            $q->execute($yourDataArray);
            // do other stuff if needed

        }

} catch(PDOException $e) {
  echo $e->getMessage();
}


  1. Hvad er den bedste måde at gemme mediefiler på en database?

  2. Hvordan dropper man en PostgreSQL-database, hvis der er aktive forbindelser til den?

  3. Docker kan ikke forbinde applikationen til MySQL

  4. 2 måder at returnere rækker, der kun indeholder ikke-alfanumeriske tegn i Oracle