Ich habe ein Problem mit Daten in eine Tabelle zu senden, der Tabelle alle placed order
halten soll, cart_array
, name
, first name
, last name
, etc ..einreichen Formular MySQL-Datenbank, arbeiten nur einmal
Sie macht geltend, , das erste Mal, und dann, wenn ich eine andere Bestellung aufgeben möchte, passiert nichts ... es wird die Daten nicht an die Tabelle senden.
Wenn ich den ersten Eintrag aus der Tabelle lösche und die Reihenfolge erneut erstelle, funktioniert es aber die Auto Increment ID springt von der, die ich gerade gelöscht habe (sagen wir von ID-1 bis ID-14, hängt von vielen Versuchen ab ich habe)
der pHP-Block ist
<?php
function register_transaction($register_order){
array_walk($register_order, 'array_sanitize');
$fields = '`' . implode('`, `', array_keys($register_order)) . '`';
$data = '\'' . implode('\', \'', $register_order) . '\'';
mysql_query("INSERT INTO `transactions` ($fields) VALUES ($data)");
}
if (empty($_POST) === false) {
$register_order = array(
'product_id_array' => $_POST['product_id_array'],
'payer_email' => $_POST['payer_email'],
'first_name' => $_POST['first_name']
);
register_transaction($register_order);
}
?>
Form
<form action="" method="post">
<ul style="position:relative">
<li style="float:none;">Cart<br />
<input type="text" name="product_id_array" value="<?php echo $product_id_array;?>" /></li>
<li style="float:none;">Email<br />
<input type="email" name="payer_email" value="<?php echo $user_data["email"];?>" /></li>
<li style="float:none;">Name<br />
<input type="text" name="first_name" value="<?php echo $user_data["name"];?>" /></li>
<li style="float:none;">
<input type="submit" value="Trimite Comanda" /></li>
</ul>
</form>
Hinzufügen [Fehler melden] (http://stackoverflow.com/questions/845021/how-to-get-useful-error-messages-in-php/845025#845025) an die Oberseite Ihrer Datei (en) _while Testing_ direkt nach dem Öffnen PHP-Tag zum Beispiel ' php error_reporting (E_ALL); ini_set ('display_errors', 1); 'um zu sehen, ob es etwas ergibt. – RiggsFolly
@RiggsFolly Es gibt mir nur "Veraltet: mysql_connect(): Die mysql-Erweiterung ist veraltet und wird in Zukunft entfernt werden:" und ich bin mir darüber bewusst, noch glaube ich nicht, dass dies das Problem ist, weil es einmal funktioniert , und die gesamte Website funktioniert, Registrierung von Benutzern, Hinzufügen von Produkten, Erstellen von Warenkorb-Array .. –
@RiggsFolly das einzige eindeutige Feld in der Tabelle ist ID, die Auto Increment ist .. so sollte es kein Problem sein. –