按钮单击和数据库更新后重定向页面

时间:2011-04-15 17:30:37

标签: php mysql redirect

我试图在单击按钮后重新定位页面并在数据库更新后但它似乎无法正常工作。

我有一个完整的表单,以减少使用的页面数量(例如,不,感谢内容已被编辑“页面)但在内容编辑后我希望重定向回家。

表单和数据库更新:

    <div id = "errormsg">&nbsp;</div>
    <?php 

    echo "<table border=\"0\" align=\"center\" cellpadding=\"2\" cellspacing=\"7\" style=\"font-family:Arial;font-size:11px\">";
    echo "<tr>";
        echo "<td>&nbsp;</td>";
echo "<td>&nbsp;</td>";
echo "</tr>";
echo "<tr>";
        echo "<td><form name=\"confhome\" method=\"post\" action=\"\" onsubmit=\"return valText()\"><textarea name=\"tag\" cols=\"20\" rows=\"3\" id=\"tag\">$row[tagbrief]</textarea></td></tr>";
        echo "<tr><td><input type=\"submit\" value=\"Edit\"></form></td></tr>";
        echo "<tr></tr>";
        echo "</table><br/>";


    $tagbrief = $_POST['tag'];
    mysql_query("UPDATE quackedup SET tagbrief='$tagbrief' WHERE id='1'");
    ?>

ref验证

<script type="text/javascript">
function valText(){

    var text = document.getElementById('tag');
    var div = document.getElementById('errormsg');

    var lets = /^[0-9a-zA-Z\s\-\'(\)\&\,\:\.\!\?]+$/;

    if((text.value == '') || (text.value == ' ')){
        div.innerHTML="<b>Please enter your changes</b>";
        text.focus();
        return false;}
    else if(text.value.match(lets)){
        div.innerHTML="<b>Content updated</b>";
        return true;}
else {
    return false;}

}

感谢任何帮助,谢谢。

2 个答案:

答案 0 :(得分:0)

我不确定我是否完全遵循但我会重新调整它,所以就像这样:

<?
    if($_POST)
    {
        $tagbrief = mysql_real_escape_string($_POST['tag']);
        mysql_query("UPDATE quackedup SET tagbrief='$tagbrief' WHERE id='1'");

        header("Location: /path/to/script");
        exit;
    }
?>

<div id = "errormsg">&nbsp;</div>
<?php 

echo "<table border=\"0\" align=\"center\" cellpadding=\"2\" cellspacing=\"7\" style=\"font-family:Arial;font-size:11px\">";
echo "<tr>";
    echo "<td>&nbsp;</td>";
echo "<td>&nbsp;</td>";
echo "</tr>";
echo "<tr>";
    echo "<td><form name=\"confhome\" method=\"post\" action=\"\" onsubmit=\"return valText()\"><textarea name=\"tag\" cols=\"20\" rows=\"3\" id=\"tag\">$row[tagbrief]</textarea></td></tr>";
    echo "<tr><td><input type=\"submit\" value=\"Edit\"></form></td></tr>";
    echo "<tr></tr>";
    echo "</table><br/>";
?>

现在,它只会在您实际发布表单时更新该字段,并且表单内容将针对数据库进行转义(以防止SQL注入)。只需将/ path / to / script更改为您要转到的路径/ URL。

答案 1 :(得分:0)

我认为你只需要写 header("Location:/"); 我希望这会对你有所帮助