我想写一个php代码(我在php的入门级)。
<html>
<body>
<?php
session_start();
$_SESSION['Name'] = $_POST['Name'];
$_SESSION['Email'] = $_POST['Email'];
$_SESSION['Password']= $_POST['Password'];
$con = mysqli_connect("localhost","root"," ","Details");
if(!$con)
{
echo("hello");
}
mysqli_select_db( $con,"Details" );
$value = isset($_POST['Name']) ? $_POST['Name'] : '';
$value1 = isset($_POST['Email']) ? $_POST['Email'] : '';
$value2 = isset($_POST['Password']) ? $_POST['password'] : '';
$sql = "insert into details1 ( Name, Email, Password ) values ( '$Name', '$Email', '$Password' )";
echo "1 record is added";
mysqli_close($con);
?>
我收到以下通知:
Notice: Undefined index: Name in C:'wamp'www'newlogin'data1.php on line 7
Notice: Undefined index: Email in C:'wamp'www'newlogin'data1.php on line 9
Notice: Undefined index: Password in C:'wamp'www'newlogin'data1.php on line 11
Notice: Undefined variable: Name in C:'wamp'www'newlogin'data1.php on line 22
Notice: Undefined variable: Email in C:'wamp'www'newlogin'data1.php on line 22
Notice: Undefined variable: Password in C:'wamp'www'newlogin'data1.php on line 22
1 record is added
如何解决这些通知?
如何解决这些通知?
容易。确保捕获错误的代码。
首先,您没有检查在设置$_SESSION
时是否实际设置了$_POST
值,因此我重新编写了您的代码以将其考虑在内。我还对它进行了优化,使代码通过$_POST
值数组滚动并适当地设置会话。
然后在MySQL区域设置$value
, $value1
&$value2
,然后你使用$Name
, $Email
&$Password
。为什么?把它们设为$Name
, $Email
&$Password
。我还将其设置为通过$_POST
值的数组滚动到通过$$post_value
设置值。
<?php
session_start();
// Set an array of post values.
$post_array = array('Name','Email','Password');
// Roll through the array of post values and set the session as appropriate.
foreach ($post_array as $post_value) {
$_SESSION[$post_value] = isset($_POST[$post_value]) ? $_POST[$post_value] : null;
}
$con = mysqli_connect("localhost","root"," ","Details");
if(!$con) {
echo("hello");
}
mysqli_select_db( $con,"Details" );
// Roll through the array of post values and set the session as appropriate.
foreach ($post_array as $post_value) {
$$post_value = isset($_POST[$post_value]) ? $_POST[$post_value] : null;
}
$sql = "insert into details1 ( Name, Email, Password ) values ( '$Name', '$Email', '$Password' )";
echo "1 record is added";
mysqli_close($con);
?>