PHP & MySQL - сохранение и проблемы цикличного выполнения

Я плохо знаком с PHP и MySQL, я хочу, чтобы пользователь смог сохранить несколько имен и там значений в MySQL названные таблицы базы данных names использование PHP, я динамично создам поля формы с JQuery каждый раз пользователь, нажимает на ссылку так пользователь, может ввести 1 - 1 000 000 различных имен и там значений, которые будут сохранены в названной таблице names.

Так как я задал свой последний вопрос, я выяснил, как сохранить мои значения от моей формы с помощью for цикл, но каждый раз, когда я циклично выполняю свои значения, когда я добавляю одно или несколько динамических полей второе названное поле формы meaning не сохранит значение, вводимое, также мои динамические поля формы сохраняют удвоение цикличного выполнения, утраивая и так далее вводимые значения в базу данных, все это зависит от того, сколько полей формы добавляется динамично. Я задавался вопросом, как я могу решить эти проблемы?

На стороне отмечают, что я заменил запрос эхом для наблюдения значений, которые вводятся.

Вот код PHP.

<?php
if(isset($_POST['submit'])) {
$mysqli = mysqli_connect("localhost", "root", "", "site");
$dbc = mysqli_query($mysqli,"SELECT * FROM names WHERE userID='$userID'");

$name = $_POST['name'];
$meaning = $_POST['meaning'];

if(isset($name['0']) && mysqli_num_rows($dbc) == 0 && trim($name['0'])!=='' && trim($meaning['0'])!=='') {

for($n = 0; $n < count($name); $n++) {
    for($m = 0; $m < count($meaning); $m++) {
        echo $name[$n] . '<br />';
        echo $meaning[$m] . '<br /><br />';
        break;
    }
}

}

}
?>

И вот HTML-код.

<form method="post" action="index.php">
<ul>
    <li><label for="name">Name: </label><input type="text" name="name[]" id="name" /></li>
    <li><label for="meaning">Meaning: </label><input type="text" name="meaning[]" id="meaning" /></li>
    <li><input type="submit" name="submit" value="Save" /></li>
</ul>
</form>



В случае необходимости я помещу код JQuery.

1
задан R.I.P.coalMINERS 26 April 2010 в 10:18
поделиться

2 ответа

Если вы посмотрите на представленный массив, все станет яснее:

echo('<pre>' . print_r($_POST, TRUE) . '</pre>');

Если вы все еще не знаете, как решить проблему:

for($index = 0; $index < count($_POST['name']; $index++)
 {
  echo 'name: ' . $_POST['name'][$index] . '<br />';
  echo 'meaning: ' . $_POST['meaning'][$index] . '<br /><br />';
 }
1
ответ дан 3 September 2019 в 01:01
поделиться

прежде всего вы используете таблицу вместо ul li

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

JAVASCRIPT

<script type="text/javascript" src="js/jquery.js"></script>
    <script type="text/javascript">
    $(document).ready(function() {
    $("#addMore").click(function(){
    $("#nameline").clone().insertAfter("#nameline").slideDown(500);
    $("#meaningline").clone().insertAfter("#nameline").slideDown(500);
    $("#name:last").val("").focus();
    $("#meaning:last").val("");

});
    });
</script>

PHP

<form method="post" action="">
<input type="button" name="addMore" id="addMore" value="add">
<table id="myTable">
    <tbody>
    <tr id="nameline">
        <td><label for="name">Name: </label><input type="text" name="name[]" id="name" /></td>
    </tr>
    <tr id="meaningline">
        <td><label for="meaning">Meaning: </label><input type="text" name="meaning[]" id="meaning" /></td>
    </tr>
    <tr><td><input type="submit" name="submit" value="Save" id="submit" /></td></tr>
    </tbody>
 </table>
</form>
<?php print_r($_POST);?>

для получения дополнительной информации вы можете обратиться к по этой ссылке

1
ответ дан 3 September 2019 в 01:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: