我正在尝试使用我的数据库中的现有数据填充表单,并继续在我的变量上说明未定义的索引。我不确定为什么,因为我在另一个链接文件中定义它们。
以下是代码:
浏览器的代码:
<!doctype HTML>
<html lang="en">
<?php
require_once("connection.php");
?>
<head>
<meta charset="utf-8">
<meta name="Used Car Sales" content="West Coast Auto"/>
<title>West Coast Auto: Update Customer</title>
<link href="css/main.css" type="text/css" rel="stylesheet"> <!-- this links the html to the css file-->
</head>
<body>
<header>
<!--------------------------- UPPER NAV --------------------------------->
<nav id="upper_nav">
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="employee_login.html">Employee Login</a></li>
<li><a href="privacy.html">Privacy Policy</a></li>
</ul>
</nav>
<!---------------------- LOGO AND ADDRESS ------------------------------------->
<div id="logo">
<a href="index.html"><img src="images/west_coast_auto_logo.png" alt="West Cosst Auto" title="West Coast Auto"></a>
</div>
<div id="address">
<h4>West Coast Auto</h4>
<h4>375 Albany Hwy.</h4>
<h4>Victoria Park</h4>
<h4>Perth WA 6100</h4>
<h4>☎ (08) 9415 1234</h4>
<h4>Email: <a href="mailto:Jarvis_Palmer@westcoastauto.com.au ">Jarvis Palmer</a></h4>
</div>
<!------------------------------------ LOWER NAV ------------------------>
<nav id="lower_nav">
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="about.html">About</a>
<ul>
<li><a href="history.html">History</a></li>
<li><a href="our_values.html">Our Values</a></li>
</ul>
</li>
<li><a href="used_vehicles.html">Used Vehicles</a></li>
<li><a href="specials.html">Specials</a></li>
<li><a href="finance.html">Finance</a>
<ul>
<li><a href="insurance.html">Insurance</a></li>
</ul>
</li>
<li><a href="testimonials.html">Testimonials</a></li>
<li><a href="contact.html">Contact</a></li>
</ul>
</nav>
<div id="navline"></div>
</header>
<!-------------------------------- CLIENT INPUT FORM ------------------------------------>
<form method="post" action="update_cust.php">
<?php
$query = "SELECT * FROM client WHERE C_num='2'"; // run a select query to return the existing data for the record
$results = mysqli_query($conn, $query );
if(!$results) { // capture any errors
echo ("Query error: " . mysqli_error($conn));
}
else {
// fetch and store the results for later use if no errors
while ($row = mysqli_fetch_array($results)) {
$C_num =$row['cnum'];
$C_Firstname = $row['cfirstname'];
$C_Lastname = $row['clastname'];
$Unitnum = $row['unitnumber'];
$Housenum = $row['housenumber'];
$C_Street = $row['street'];
$C_Suburb = $row['suburb'];
$C_City = $row['city'];
$C_Postcode = $row['postcode'];
$C_State = $row['state'];
$C_Phone = $row['phone'];
$C_Email = $row['email'];
}
}
?>
<h2 id="input_form_heading">Client Input Form:</h2>
<h3>Enter your details into the form and when you are ready click the submit button </h3>
<p>Client Number:</p><input type="text" name="cnum" value="<?=$C_num?>"><br>
<p>First Name:</p><input type="text" name="cfirstname" value="<?=$C_Firstname?>" required><br>
<p>Last Name:</p><input type="text" name="clastname" value="<?=$C_Lastname?>" required><br>
<p>Unit Number: </p><input type="text" name="unitnumber" value="<?=$Unitnum?>" ><br>
<p>House Number: </p><input type="text" name="housenumber" value="<?=$Housenum?>" ><br>
<p>Street:</p><input type="text" name="street" value="<?=$C_Street?>" required><br>
<p>Suburb:</p><input type="text" name="suburb" value="<?=$C_Suburb?>" required><br>
<p>City:</p><input type="text" name="city" value="<?=$C_City?>" required><br>
<p>Post Code:</p><input type="text" name="postcode" value="<?=$C_Postcode?>" required><br>
<p>State:</p> <select class="form-control" type="text" name="state" value="<?=$C_State?>" ><br> <!-- "form control" and "required" changes the input fields color (see css)-->
<option value="">Please choose a state</option>
<option value="ACT">ACT</option>
<option value="NSW">NSW</option>
<option value="NT">NT</option>
<option value="QLD">QLD</option>
<option value="SA">SA</option>
<option value="TAS">TAS</option>
<option value="VIC">VIC</option>
<option value="WA">WA</option>
</select><br>
<p>Phone:</p><input type="tel" name="phone" value="<?=$C_Phone?>" ><br>
<p>Email:</p><input type="email" name="email" value="<?=$C_Email?>" required><br>
<br><br>
<input type="submit" name="submit" value= "Update">
<input type ="reset" name="reset" value ="Reset">
</form>
<!------------------------------- FOOTER ------------------------------>
<footer>
<div>
<p id="copyright">Copyright © 2017 West Coast Auto</p>
</div>
</footer>
</body>
</html>
然后这是实现这些过程的PHP代码:
<?php
// MySQL Database Connect
require_once("connection.php");
// read the values from the form and store in variables
$C_num = $_POST['cnum'];
$C_Firstname = $_POST['cfirstname'];
$C_Lastname = $_POST['clastname'];
$Unitnum = $_POST['unitnumber'];
$Housenum = $_POST['housenumber'];
$C_Street = $_POST['street'];
$C_Suburb = $_POST['suburb'];
$C_City = $_POST['city'];
$C_Postcode = $_POST['postcode'];
$C_State = $_POST['state'];
$C_Phone = $_POST['phone'];
$C_Email = $_POST['email'];
// escape variables for security
$C_num = mysqli_real_escape_string($conn, $C_num);
$C_Firstname = mysqli_real_escape_string($conn, $C_Firstname);
$C_Lastname = mysqli_real_escape_string($conn, $C_Lastname);
$Unitnum = mysqli_real_escape_string($conn, $Unitnum);
$Housenum = mysqli_real_escape_string($conn, $Housenum );
$C_Street = mysqli_real_escape_string($conn, $C_Street);
$C_Suburb = mysqli_real_escape_string($conn, $C_Suburb);
$C_City = mysqli_real_escape_string($conn, $C_City);
$C_Postcode = mysqli_real_escape_string($conn, $C_Postcode);
$C_State = mysqli_real_escape_string($conn, $C_State);
$C_Phone = mysqli_real_escape_string($conn, $C_Phone);
$C_Email = mysqli_real_escape_string($conn, $C_Email);
// create the UPDATE query
$query="UPDATE client SET C_num='$C_num', C_Firstname='$C_Firstname', C_Lastname='$C_Lastname', Unitnum='$Unitnum', Housenum='$Housenum', C_Street='$C_Street', C_Suburb='$C_Suburb', C_City='$C_City', C_Postcode='$C_Postcode', C_State='$C_State', C_Phone='$C_Phone', C_Email='$C_Email' WHERE C_num='2'";
//execute the query
$results = mysqli_query($conn, $query );
// check for errors
if(!$results) {
echo ("Query error: " . mysqli_error($conn));
exit;
}
else {
// Redirect the browser window back to the select query page if there are no errors
header("location: update_cust1.php");
}
?>
非常感谢任何关于为什么这不起作用的想法
此错误会出现在屏幕上
注意:未定义的索引:第80行的/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中的cnum
注意:第81行/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中的未定义索引:cfirstname
注意:第82行/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中的未定义索引:clastname
注意:第83行的/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中的未定义索引:unitnumber
注意:未定义的索引:第84行的/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中的housenumber
注意:第85行的/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中未定义的索引:street
注意:未定义的索引:第86行的/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中的郊区
注意:第87行的/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中未定义的索引:city
注意:未定义的索引:第88行的/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中的邮政编码
注意:未定义的索引:第89行的/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中的状态
注意:未定义的索引:第90行的/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中的电话
注意:未定义的索引:第91行的/Applications/XAMPP/xamppfiles/htdocs/taylor_callaghan_wca/update_cust1.php中的电子邮件
以下是客户端表的截图