Отправка одного из множества входных данных на странице в базу данных mysql с использованием WordPress

В настоящее время мне удалось получить форму на странице WordPress для отправки данных в базу данных MySQL (очень большая победа для меня; не большой в php / coding)

Это код, который я использовал, но мне нужна помощь в изменении:

<form method="post">
Value1: <input type="text" name="field1" />
Value2: <input type="text" name="field2" />
Value3: <input type="text" name="field3" />
Value4: <input type="text" name="field4" />
Value5: <input type="text" name="field5" />
<input type="submit" /></form>$newdb = new wpdb( 'username', 'password', 'database', 'localhost' );

$field1 = $_POST['field1'];
$field2 = $_POST['field2'];
$field3 = $_POST['field3'];
$field4 = $_POST['field4'];
$field5 = $_POST['field5'];

$newdb->insert("test", array(
"field1" => $field1,
"field2" => $field2,
"field3" => $field3,
"field4" => $field4,
"field5" => $field5
));

Как вы можете видеть, это приводит к тому, что все входные данные на странице отправляются, и заканчивается тем, что в строках моей таблицы создаются пустые ячейки, когда в поля нет данных.

Я должен быть в состоянии представить каждый вход по отдельности, надеюсь, не создавая отдельный php-скрипт для каждого ввода и не вводя пустые ячейки в мою таблицу.

0

Решение

Если вы хотите избежать вставки пробелов, вам просто нужно проверить каждый ввод перед тем, как вставить его.

Например,

$inserts = array();
for ($i = 1; $i < 6; $i++) {
$fieldName = 'field' . $i . '-name';
if ($_POST[$fieldName]) {
$inserts[$field-name] = $_POST[$fieldName];
}
}
$newdb->insert("test", $inserts);
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]