sql >> Databáze >  >> RDS >> Mysql

Portál pro zachycení objednávky PHP

Z hlediska použitelnosti možná budete chtít přehodnotit design svého formuláře. Pokud uživatel vyplní 149 řádků objednávkového formuláře a omylem stiskne tlačítko Zpět, bude mít opravdu špatný den. Možná byste měli zvážit zachycení jednoho řádku najednou nebo umožnit uživateli nahrát soubor (tabulku, CSV atd.) obsahující všechny položky.

Pokud nemůžete změnit návrh formuláře, budete muset zpracovat řádky ve smyčce. Smyčka může vypadat nějak takto:

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);
}

Případně můžete výsledek každé smyčky připojit k jednomu velkému dotazu a spustit jej po zachycení všech 150 řádků.

Pro stručnost jsem vynechal několik detailů, které je třeba doplnit:

  • Unijte své vstupy, abyste se ujistili, že uživatel nepoškodí vaši databázi
  • Zvažte použití PDO nebo něčeho jiného než mysql_*, abyste si usnadnili používání databáze.
  • Zkontrolujte, zda nezaznamenáváte a nevkládáte prázdné hodnoty, pokud je řádek ponechán prázdný.



  1. Průměrná tabulka historie akcií

  2. Postgres 9.5 V KONFLIKTU VYBERTE

  3. Přidání kroku úlohy do existující úlohy agenta SQL Server (T-SQL)

  4. Jak spustit skupinu dotazů SQL podle problému?