Я нашел php-скрипт, используемый для создания вашей собственной гостевой книги, которую я пытался сделать простой страницей для отчетов о продажах. Пожалуйста, взгляните на код, потому что что-то не так, я получаю WSoD.
Я просто хочу, чтобы несколько разных полей появлялись на одной странице (желательно с функцией автоматической даты) при нажатии кнопки Сохранить.
<html>
<head><title>Reports</title></head>
<body>
<h1>Reports</h1>
<h2>Please fill in the form below and click Save.</h2>
<form action="" method="POST">
<input type="text" name="user" placeholder="Name" />
<br />
<input type="text" name="date" placeholder="Date" />
<br />
<input type="text" name="company" placeholder="Company" />
<br />
<textarea cols="40" rows="5" name="note" placeholder="Report" wrap="virtual"></textarea>
<br />
<input type="submit" name="submit" value="Save" />
</form>
<?php
if (isset($_POST['submit'])){
$user = $_POST['user'];
$user = $_POST['date'];
$user = $_POST['company'];
$note = $_POST['note'];
if(!empty($user) && !empty($date)) && !empty($company)) && !empty($note)) {
$msg = $user . ' <br /> ' . $date . ' <br /> ' . $company . ' <br /> ' . $note;
//will open a file
$fp = fopen("report.txt","a") or die("Can't open file");
//will write to a file
fwrite($fp, $msg."\n");
fclose($fp);
}
}
?>
<h2>Old reports:</h2>
<?php
$file = fopen("report.txt", "r") or exit("Unable to open file!");
//Output a line of the file until the end is reached
while(!feof($file))
{
//will return each line with a break
echo fgets($file). '<br />';
}
fclose($file);
?>
</body>
</html>
Проблема 1
У вас есть дополнительные )
в вашем if
заявление:
if(!empty($user) && !empty($date)) && !empty($company)) && !empty($note)) {
… должно быть…
if(!empty($user) && !empty($date) && !empty($company) && !empty($note)) {
Проблема 2
Вы также перезаписываете одну и ту же переменную несколько раз, что приводит к $date
а также $company
быть пустым:
$user = $_POST['user'];
$user = $_POST['date'];
$user = $_POST['company'];
$note = $_POST['note'];
… должно быть…
$user = $_POST['user'];
$date = $_POST['date'];
$company = $_POST['company'];
$note = $_POST['note'];
Других решений пока нет …