Mysql
 sql >> Base de données >  >> RDS >> Mysql

Portail de capture de commande PHP

Du point de vue de l'utilisabilité, vous souhaiterez peut-être reconsidérer la conception de votre formulaire. Si l'utilisateur remplit 149 lignes du formulaire de commande et appuie accidentellement sur le bouton de retour, il va passer une très mauvaise journée. Peut-être devriez-vous envisager de capturer une seule ligne à la fois ou d'autoriser l'utilisateur à télécharger un fichier (feuille de calcul, CSV, etc.) contenant toutes les entrées.

Si vous ne pouvez pas modifier la conception du formulaire, vous devrez traiter les lignes en boucle. La boucle peut ressembler à ceci :

for ( $i = 1; $i <=150; $i++ ) {
    $name = $_POST['name' . $i];
    $value = $_POST['value1' . $i];
    // capture the rest of the field values
    $query = "INSERT INTO (...) VALUES ($name, $value, ...)";
    mysql_query($query);
}

Vous pouvez également ajouter le résultat de chaque boucle à une grande requête et l'exécuter après avoir capturé les 150 lignes.

Par souci de brièveté, j'ai omis quelques détails que vous devez ajouter :

  • Échappez vos entrées pour vous assurer que votre utilisateur ne corrompt pas votre base de données
  • Envisagez d'utiliser PDO ou autre chose que mysql_* pour faciliter l'utilisation de votre base de données.
  • Vérifiez que vous ne capturez pas et n'insérez pas de valeurs vides si une ligne est laissée vide.