好的,我正在制作一个多功能 php 文件。该文件名为functions.php 并具有switch - case。
起初,我只有一个简单的 register.php 文件,它发送到 functions.php。这是我得到的错误:-
Notice: Undefined index: action in C:\Program Files (x86)\EasyPHP-DevServer-13.1VC9\data\localweb\transfer\functions.php on line 5
functions.php?username=223&password=223&action=register
这是非常不安全的..我只想展示动作..like functions.php?action=register
我要对脚本进行哪些更改?这是代码:-
注册.php
<form action="functions.php" name="post">
<table>
<tr>
<td>Username : </td>
<td><input type="text" name="username"/></td>
</tr>
<tr>
<td>Password : </td>
<td><input type="password" name="password"/></td>
</tr>
<tr>
<td><input type="submit" name="action" value="register"></td>
</tr>
</table>
</form>
函数.php
<?php
session_start();
$db = mysql_connect('127.0.0.1', 'root', 'akshay!@#') or die (mysql_error($db));
mysql_select_db('transfer', $db);
switch($_POST['action'])
{
case 'register':
$username = (isset($_POST['username'])) ? $_POST['username'] : '';
$password=(isset($_POST['password'])) ? $_POST['password'] : '';
$username=mysql_real_escape_string($username, $db);
$password = md5($password);
$password = mysql_real_escape_string($password);
$query = "select * from users where user_name = '" . $username . "'";
$result = mysql_query($query, $db) or die (mysql_error($db));
if(mysql_num_rows($result) > 0)
{
echo "Username already exists, redirecting";
header('Refresh: 3; URL=register.php');
die();
}
if(empty($username) || empty($password))
{
echo "Fields cannot be empty, redirecting";
header('Refresh: 3; URL=register.php');
}
else
{
$query2 = "insert into users(user_id, user_name, user_pass)
values
(NULL, '" . $username . "', '" . $password . "')";
$result2 = mysql_query($query2, $db) or die (mysql_error($db));
if($result2)
{
echo "Registration successful";
}
else
{
echo "Cannot register";
}
}
break;
}
?>