我无法获取所选值并存储在mysql中 我想知道什么应该放在形式动作,而我看到有人说不需要,有些人说放
<?php echo $_SERVER['PHP_SELF']?>
这是完成的代码
<?php
$db_handle = mysql_connect("localhost","root","");
$db_found = mysql_select_db("sdp", $db_handle);
$sql='SELECT title FROM club order by title';
$query= mysql_query($sql)or die(mysql_error());
echo'<form action=<?php echo $_SERVER['PHP_SELF']?> method="post">';
echo '<select name="club">';
while ($row=mysql_fetch_array($query)) {
echo'<option value="'.$row['title'].'">'.$row['title'].'</option>';
}
echo'</select>';
echo'<input type="submit" value="Register">';
echo'</form>';
if(isset($_POST['Register'])) {
session_start();
$title=$_POST['club'];
echo $title;
$username=$_SESSION['username'];
mysql_query("UPDATE login SET club='$title' WHERE user='$username'");
echo "Register successfully!";
}
?>
答案 0 :(得分:0)
试试:
echo'<form action="' . $_SERVER['PHP_SELF'] . '" method="post">';
但是,如果<form>
没有指定action
属性,它会将数据发布到当前操作,因此您可以在这种情况下跳过它。
答案 1 :(得分:0)
你有php标签内的代码,所以不需要使用
echo'<form action=<?php echo $_SERVER['PHP_SELF']?> method="post">';
只需使用
echo'<form action="'.$_SERVER['PHP_SELF'].'" method="post">';
答案 2 :(得分:0)
如果要发布到同一页面,则无需指定action
。
似乎您的isset($_POST['Register'])
将始终返回false,因为您没有任何名为Register
的dom元素。要么改变isset($_POST['Club'])
的条件,要么在提交按钮
Register
答案 3 :(得分:0)
你能试试吗?
这将是连接问题。
如果您给出了哈希(#),则会自动考虑当前页面。
<form action=<?php echo $_SERVER['PHP_SELF']?>
到
<form action="'.<?php echo $_SERVER['PHP_SELF']?>.'" method="post">
或
<form action="#" method="post">
或
<form method="post">
答案 4 :(得分:0)
当您的行为相同时,您可以将空白留空。但是如果你想要使用PHP_SELF,你有一些输入错误。没必要
echo'<form action=<?php echo $_SERVER['PHP_SELF']?> method="post">';
试试这个
echo'<form action="'.$_SERVER["PHP_SELF"].'" method="post">';