#php
#php
Вопрос:
Я пытаюсь создать гостевую книгу с базой данных mysql. У меня нет проблем с отображением данных sql в моей форме.
Но когда я пытаюсь ввести данные, моя кнопка отправки не работает. Я думаю, что проблема в этом коде, но я не могу его найти. и пару раз выполняли учебник.
У меня нет никаких сообщений об ошибках. Но это часть кода. Спасибо
<?php
if(isset($_GET['page'])){
echo "
<form action='guest_process.php' method='post'>
<p>Name: <input type='text' name='name'> </p>
<p>Email: <input type='text' name='email'> </p>
<p>Comment: </p>
<p><textarea name='comment'></textarea></p>
<hr />
<p><input type='button' name='submit' value='Post Entry'></p>
</form>
";
}else{
$connect = mysql_connect('localhost','root','') or die ('Couldnt connet');
$db = mysql_select_db('guestbook');
$query = mysql_query('select * from guestbook order by id desc');
$num_rows = mysql_num_rows($query);
if($num_rows > 0){
//display entries
while($row = mysql_fetch_assoc($query)){
echo "
<p>
<b>Name: </b>".$row['name']."
</p>
<p>
<b>Email: </b>".$row['email']."
</p>
<p>
<b>Comment: </b>".$row['comment']."
</p>
<p>
<b>Date: </b>".$row['date']." | Time: ".$row['time']."
</p>
<hr />
";
}
} else{
echo 'no entries in database';
}
}
?>
Гостевая книга разделена на два php-файла.
Это другая страница guest_process.php
<?php
if($_post['submit']){
$connect = mysql_connect('localhost','root','') or die ('Couldnt connet');
$db = mysql_select_db('guestbook');
$name = strip_tags($_POST['name']);
$email = strip_tags($_POST['email']);
$comment = n12br($_POST['comment']);
$date = date('Y-m-d');
$time = date('H:i:s');
$query = mysql_query("insert into guestbook values('','$name','$email','$comment','$date','$time')");
header('Location: index.php');
}else {
header ('Location: index.php');
}
?>
Комментарии:
1. Хорошо, я решил проблему, кнопка отправки была неправильной (как многие из вас сказали) Правильный сценарий <p><тип ввода=’отправить’ имя =’отправить’ значение =’Опубликовать запись’></p> И далее guest_process.php В переменной comment я использовал n12br вместо strip_tags, поэтому правильная строка выглядит так: $comment = strip_tags($_POST[‘комментарий’]); спасибо за помощь!
Ответ №1:
используйте <input type="submit" value="Post Entry">
вместо <input type=button>
Комментарии:
1. Кнопка type= submit на самом деле сработала, но я все еще могу вводить данные в свою базу данных
Ответ №2:
это нехорошо:
<input type =button name='submit' value='Post Entry'>
это должно быть:
<input type="submit" name="submit" value="Post Entry">
Комментарии:
1. Я был в этом, но я получаю синтаксическую ошибку, когда я использую двойные кавычки.
2. замените двойные кавычки одинарными
3. акцент делается на тип ввода =»отправить» вместо тип ввода =»кнопка»
Ответ №3:
Проблема в том, что нет кода для размещения чего-либо в базе данных.
Сначала вам нужно что-то опубликовать. Вы можете подумать, что эта строка делает это, но это не так:
<input type =button name='submit' value='Post Entry'>
Помимо того факта, что вам нужен "
тип, «кнопка» на самом деле не является чем-то, что выполняет отправку. Для этого вам понадобится код на стороне клиента. Вы могли бы лучше изменить его на
<input type="button" name='submit' value='Post Entry'>
Но вас там не будет. Теперь вам нужно взять информацию из $_POST
переменной (попробуйте var_dump($_POST)
посмотреть, что там) и поместить ее в свою базу данных. Вы можете найти соответствующие команды для SQL и соединения php-mysql в вашем учебнике, вероятно