Php 从Xampp获取错误消息;注意:未定义索引";HTML
以及nama(第25行)、电子邮件(第25行)、网站(第25行)、komentar(第25行)、art_id(第26行)、art_url(第26行)的相同通知。 但最后一个通知是Php 从Xampp获取错误消息;注意:未定义索引";HTML,php,html,mysql,forms,mysqli,Php,Html,Mysql,Forms,Mysqli,以及nama(第25行)、电子邮件(第25行)、网站(第25行)、komentar(第25行)、art_id(第26行)、art_url(第26行)的相同通知。 但最后一个通知是 Notice: Undefined index: tombol in C:\xampp\htdocs\pw-liana\submitcomment.php on line 2 Notice: Undefined index: nama in C:\xampp\htdocs\pw-liana\submitcomment.
Notice: Undefined index: tombol in C:\xampp\htdocs\pw-liana\submitcomment.php on line 2
Notice: Undefined index: nama in C:\xampp\htdocs\pw-liana\submitcomment.php on line 25
我的php代码
Notice: Undefined variable: art_url in C:\xampp\htdocs\pw-liana\submitcomment.php on line 31
问题是,“全局”数组$\u POST没有tombol索引。在第一步中,您应该检查是否设置了索引。然后检查该值是否为您预期的值
我也会使用mysqli而不是mysql。不推荐使用MySQL(不带i)
我已经更新了你的代码
编辑:未测试代码
此外,我会尝试在PHP中完成所有工作,而不必一直进行重定向。如果无法使用PHP函数头('Location:URL');反而
EDIT2:以下是更新的代码。试试这个。还没有测试,只是Dreamweaver检查了语法错误
<?php
if ($_POST["tombol"]=="Kirim")
{
$nama=$_POST["nama"];
$email=$_POST["email"];
$website=$_POST["website"];
$komentar=$_POST["komentar"];
$art_id=$_POST["art_id"];
$art_url=$_POST["art_url"];
if(empty($nama))
$_POST["nama"]='anonymous';
if(empty($komentar)){
echo "<meta http-equiv='refresh' content='2; url=$art_url'>";
die("komentar harus diisi");}
}
//connect database
$con=mysql_connect("localhost", "root", "");
if(!$con)
die("Tidak dapat melakukan koneksi ke server MySQL");
//Menampilkan data
mysql_select_db("db_web", $con);
$sql="INSERT INTO comment (nama, email, website, komentar, art_id, art_url,
date)
VALUES
('$_POST[nama]','$_POST[email]','$_POST[website]', '$_POST[komentar]',
'$_POST[art_id]', '$_POST[art_url]', NOW())";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "<meta http-equiv='refresh' content='0; url=$art_url'>";
//Memutuskan koneksi
mysql_close($con);
?>
您必须停止使用mysql_*扩展,它已弃用并已从php7中删除,您可以使用或替代它。当我用你的代码更新我的php时,我在第41行的C:\xampp\htdocs\pw liana\submitcomment.php中收到了一条错误消息“Parse error:syntax error,unexpected'}”,新代码应该可以工作。我已经更新了一点,所以您不需要die()函数,也不需要重定向。
<?php
if (isset($_POST["tombol"]))
{
if($_POST["tombol"] == "Kirim")
{
$nama = (isset($_POST["nama"])) ? $_POST["nama"] : 'anonymous';
$email = (isset($_POST["email"])) ? $_POST["email"] : '' ;
$website = (isset($_POST["website"])) ? $_POST["website"] : '' ;
$komentar = (isset($_POST["komentar"])) ? $_POST["komentar"] : '' ;
$art_id = (isset($_POST["art_id"])) ? $_POST["art_id"] : '' ;
$art_url = (isset($_POST["art_url"])) ? $_POST["art_url"] : '' ;
if(empty($komentar))
{
echo '<div class="error">Comment is empty</div>';
}
else
{
//connect database
$con = mysqli_connect("localhost", "root", "", "db_web");
if(!$con)
{
echo '<div class="error">SQL connection Error</div>';
}
else
{
//Menampilkan data
$sql = 'INSERT INTO comment (nama, email, website, komentar, art_id, art_url, date)
VALUES
("'.mysqli_real_escape_string($con,$nama).'","'.mysqli_real_escape_string($con,$email).'","'.mysqli_real_escape_string($con,$website).'", "'.mysqli_real_escape_string($con,$komentar).'", '.$art_id.', "'.mysqli_real_escape_string($con,$art_url).'", NOW())';
if (!mysqli_query($con,$sql))
{
echo '<div class="error">Error: ' . mysqli_error($con).'</div>';
}
//Memutuskan koneksi
mysqli_close($con);
}
}
}
else
{
echo '<div class="error">The comment is not "Kirim"</div>';
}
}
?>
<div id="publishcomment">
<?php include("publishcomment.php"); getcomment("1");
$actual_link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
?>
</div>
<div>
<form name="submitcomment" method="post" action="<?php echo $actual_link; ?>">Nama:<br>
<input name="nama" type="text"><br>
Email(optional):<br><input name="email" type="email"><br>
Website(optional):<br><input name="website" type="text"><br>
Komentar:<br><textarea name="komentar" rows="6" cols="50"></textarea><br>
<input name="art_id" value="1" type="hidden">
<input name="art_url" value="" type="hidden"><br>
<input name="tombol" value="Kirim" type="submit">
<input value="Reset" type="Reset">
</form>
</div>
</div>