Что то типа такого и не работает код , почему ?
<?php
$db->set_charset('utf8');
if (isset($_POST['submitted']))
{
$name = $db->real_escape_string(htmlspecialchars($_POST['name']));
$email = $db->real_escape_string(htmlspecialchars($_POST['email']));
$comment = $db->real_escape_string(htmlspecialchars($_POST['comment']));
date_default_timezone_set('Europe/Moscow');
$currentTime = time();
$dateTime = strftime('%B-%d-%Y %H:%M:%S', $currentTime);
$dateTime;
$post_id = $_GET['id'];
if (empty($name) || empty($email) || empty($comment))
{
$_SESSION['ErrorMessage'] = "Заполните все поля";
Redirect_to("fullpost/{$post_id}");
exit;
}
if (strlen($comment)>500)
{
$_SESSION['ErrorMessage'] = "only 500 characters allowed in Comment";
Redirect_to("fullpost/{$post_id}");
}
else
{
global $db;
$stmt = $db->prepare('INSERT INTO comments (datetime, name,email,comment,approvedby,status,admin_panel_id) VALUES (?,?,?,?,?,?,?)');
$stmt->bind_param('ssssssi',$dateTime, $name, $email, $comment,'pending', 'ON',$post_id);
$stmt->execute();
if ($stmt->affected_rows === 1)
{
$_SESSION['SuccessMessage'] = "Комментарий отправлен";
Redirect_to("fullpost/{$post_id}");
}
if ($stmt->affected_rows === 0)
{
$_SESSION['ErrorMessage'] = "fail.";
Redirect_to("fullpost/{$post_id}");
}
if ($stmt->affected_rows === -1)
{
$_SESSION['ErrorMessage'] = "fail.";
Redirect_to("fullpost/{$post_id}");
}
}
}
?>
<form action="/fullpost.php?id=<?php echo $post_id ?> " method="post" enctype="multipart/form-data">
Name: <input type="text" name="name"><br>
Email: <input type="email" name="email"><br>
Comment:<br>
<textarea name="comment" ></textarea><br>
<input type="submit" name="submitted">
И короче оно отправляет форму эту и я оказываюсь на fullpost.php?id=111 и пустой экран(белый) а должно на fullpost/111 и отправится комментарий
Что то типа такого и не работает код , почему ?
$post_id = $_GET['id'];
- это строка, а в bind_param('ssssssi'
указано, что это integer
.
Надо поменять на:
$post_id = (int)$_GET['id'];
или
$post_id = intval($_GET['id']);
P.S.: Про микс $_POST и $_GET для передачи post_id
лучше использовать скрытые поля:
aka
<input type="hidden" value="<?php echo $post_id; ?>" id="..." name="id"/>
и тогда на стороне "сервера":
$post_id = intval($_POST['id']);
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
При отправке запроса на сервер вылезает ошибка 404 Not Found в консоли UnityЧерез браузер все отлично работает
кто работал с API dadataru? Столкнулся со следующей проблемой, имеется PHP код:
Подскажите как при работа с PHP Word заполнить таблицу, а именно к примеру у нас есть таблица с 1-ой строкой, нам необходимо прочитать данные из бд циклом...