Требуется действие действия кнопки Php

63
9

Как я могу реализовать кнопку click php при нажатии одной из кнопок? Я пытаюсь сделать это, если нажата кнопка sumbit, скрипт php ниже показывает, что он записан в файл, и если комментарии к просмотру отображаются, показывает комментарии

 <html> 
<body>

<form action="http://localhost/class/assignment10.php" method="post">
User Name: <input type="text" name="uname"><br>
User Comments: <textarea type ="text" name="tcomment"></textarea><br>
<input type="submit" value="Submit Comments"/>
<input type="submit" value="View Comments"/>

</form>

</body>
</html>

У меня есть две кнопки формы. Если отправить комментарии, нажмите на код php, чтобы написать имя пользователя и комментарии в текстовый файл (используйте функцию fputs для записи в файл. Также вы должны вставить новую строку после каждого имени и каждого комментария). Когда имена пользователей и комментарии успешно записаны, php должен направить

С другой стороны, если пользователь нажимает кнопку "просмотреть все комментарии", то php-код должен показывать всех пользователей и их соответствующие комментарии (использовать функцию fgets)

 <html>
<head>
<title>PHPLesson10</title>
</head>

<body>

<?php
// Collect user name and add a line break at the end.
$customer = $_POST['uname']."\n";
// Collect comment and add a line break.
$comments = $_POST['tcomment']."\n";

$file = fopen("C:/data/feedback.txt", "a");
If ($file) // if the file open successfully
{
// Write the variables to the file.
fputs($file, $customer);
fputs($file, $comments);
fclose($file);
}
Else
{
Echo "Please try again.";
}
?>

</body>
</html>

<?php
// Open the file feedback for reading
$file = fopen("C:/data/feedback.txt", "r");
// While the end of the file has NOT reached
While (!feof($file))
{
// Print one line of file
Echo fgets($file);
Echo "<br />";
}
// close the connection
fclose($file);
?>

спросил(а) 2021-01-28T02:43:33+03:00 3 месяца, 1 неделя назад
1
Решение
62

Для кнопок я обычно использую теги <button> а не теги <input>, если вы используете <!doctype html> для HTML5.

<form action="http://localhost/class/assignment10.php" method="post" id="commentForm">
<button type="submit" name="action" value="submit" form="commentForm">
Submit Comments
</button>
<button type="submit" name="action" value="view" form="commentForm">
View Comments
</button>
</form>

Затем используйте PHP, чтобы выяснить, что пользователь щелкнул следующим образом:

<?php

$action = $_POST["action"];

if ($action == "submit") {
// submission code
}

if ($action == "view") {
// viewing code
}

else {
die("Your request could not be completed.");
}

?>

ответил(а) 2021-01-28T02:43:33+03:00 3 месяца, 1 неделя назад
62

Кнопки отправки должны выглядеть следующим образом:

<input type="submit" name="submit_comment" value="Submit Comments"/> 
<input type="submit" name="view_comment" value="View Comments"/>

И ваш php-код для каждой кнопки должен выглядеть следующим образом:

<?php
if(isset($_POST['submit_comment']))
{
//the php code will be here for save comment
}
if(isset($_POST['view_comment']))
{
//the php code will be here for view comment
}

?>

ответил(а) 2021-01-28T02:43:33+03:00 3 месяца, 1 неделя назад
62

использовать атрибут name на кнопках

<input type="submit" value="Submit Comments" name="btn_submit"/>
<input type="submit" value="View Comments" name="btn_view"/>

то на php вы можете проверить что-то вроде

if (isset($_POST['btn_submit']))...

или

if (isset($_POST['btn_view']))...

С наилучшими пожеланиями, Небойса

ответил(а) 2021-01-28T02:43:33+03:00 3 месяца, 1 неделя назад
-4

Сначала дайте своим кнопкам отправки имя так:

<input type="submit" name="button1" value="Submit Comments"/>
<input type="submit" name="button2" value="View Comments"/>

и затем используйте этот PHP:

<?php
if (isset(@$_POST['button1'])) {
//Code to execute
}
if (isset(@$_POST['button2'])) {
//Code to execute
}
?>

ответил(а) 2021-01-28T02:43:33+03:00 3 месяца, 1 неделя назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема