php中用户输入的确认消息

时间:2012-10-01 12:12:35

标签: php javascript

我对以下代码有疑问。我有一个插入和更新功能。根据行计数,将执行每个功能。我想在执行操作之前提供一个确认框。在取消消息时,它不应该执行该功能。我怎么能这样做?
以下是代码:

if (isset($_POST['Save']))

{

$query = "SELECT * FROM `table_name` WHERE `submission_id` = '$submission_id'";

$sqlsearch = mysql_query($query);

$resultcount = mysql_num_rows($sqlsearch);


if ($resultcount > 0) 
{
mysql_query("UPDATE `table_name` SET 
    `name` = '$name',
    `email` = '$email',
    `phone` = '$phonenumber',
    `subject` = '$subject',
    `message` = '$message' 
    WHERE `submission_id` = '$submission_id'") or die(mysql_error());
} 
else 
{
mysql_query("INSERT INTO `table_name` (submission_id, formID, IP, 
    name, email, phone, subject, message) 
    VALUES ('$submission_id', '$formID', '$ip', 
    '$name', '$email', '$phonenumber', '$subject', '$message') ") or die(mysql_error());
        }
    }
?>`

5 个答案:

答案 0 :(得分:0)

confirm表单操作上尝试javascript onsubmit功能

var conf=confirm('Are You Sure You Want to Add/Edit?');
if(conf){
 return true; //perform the task
}else{
  return false; // Cancel the task
}

<强>更新

在表单中有一个隐藏值,如果设置了id,则调用js动作,类似这样的

<input type="hidden" id="user_id" value="<?php echo $user_id;?>" />

然后,

var user_id= $('#user_id').val();
if(user_id) {
  var conf=confirm('Are You Sure You Want to Update?');
    if(conf){
     return true; //perform the task
    }else{
      return false; // Cancel the task
    }
}else{
//your action
}

答案 1 :(得分:0)

改变这个:

$resultcount = mysql_numrows($sqlsearch);

对此:

$resultcount = mysql_num_rows($sqlsearch);

答案 2 :(得分:0)

在确认框中显示“保存按钮”的onClick事件:

<input type="submit" name="save" onclick="return confirm('Are you sure you to....?')"> 

答案 3 :(得分:0)

您可以在表单的onsubmit属性中添加验证。 (单击否时表单不会提交)

<form name="example" action="saver.php" onsubmit="return confirm('Confirmation Message');">
<!-- Inputs / Elements -->
</form>

关于您的其他查询(将您的Javascript结果传递给您的PHP文件):

如果您想要用户选择的值,您可以插入一个隐藏字段,其中包含确认框的状态。 E.g。

<form name="example" action="saver.php" onsubmit="return updateExecuted();">
<input type="hidden" id="confirmationStatus" name="confirmationStatus" />
<!-- Inputs / Elements -->
</form>

<script type="text/javascript">
    function updateExecuted(){
       var con=confirm('Confirmation question');
       if(con){
          document.getElementById('confirmationStatus').value = "yes";
       }
       else{
          document.getElementById('confirmationStatus').value = "no";
          //See comments below regarding - return false;
       }
       return true;
    }
</script>

这是如何将javascript确认结果变量传递到php文件的示例。您可以通过引用$_POST['confirmationStatus']值来检查php文件中此变量的状态。

我有点急,但我希望这有帮助。

答案 4 :(得分:0)

只需在表单中添加

即可
onsubmit="return confirm('Your Confirmation Message');">

在你的情况下

<input type="submit" name="save" onsubmit="return confirm('Your Confirmation Message');>