如何获得msgbox?

时间:2013-11-29 10:20:59

标签: javascript php jquery html post

我正在使用上传选项创建一个简单的查询表单。

如果我单击“提交”按钮,它将转到另一个页面并显示成功消息,但它应与消息框位于同一页面中。我该怎么办?

这是我的Html代码:

<ul>
    <li><span>Name</span>
        <input name="name" type="text" size="25" class="text1" />
    </li>
    <li><span>Contact</span>
        <input name="contact" type="text" size="25" class="text2" />
    </li>
    <li><span>E-mail</span>
        <input name="email" type="text" size="25" class="text3" />
    </li>
    <li><span>Subject</span>
        <input name="subject" type="text" size="25" class="text4" />
    </li>
    <li><span>Message</span>
        <textarea name="message" size="250" class="text5"></textarea>
    </li>
</ul>
<label for="upload"></label>
<div class="x">
    <input type="file" name="upload" id="file" class="button">
</div>
<div class="x1">
    <input type="submit" name="submit" value="Submit" class="button" />
</div>

这是我上传和插入的PHP代码:

<?php
$target = "upload/";
$target = $target . basename($_FILES['upload']['name']);
$ok = 1;

if (move_uploaded_file($_FILES['upload']['tmp_name'], $target))
    {
    echo "The file " . basename($_FILES['upload']['name']) . " has been uploaded";
    }
  else
    {
    echo "Sorry, there was a problem uploading your file.";
    }    
?>
<?php
include ("conn.php");

if (isset($_POST['submit']))
    {
    $sql="insert into cform  (name,contact,email,subject,message,upload)values('".$_POST['name']."','".$_POST['contact']."','".$_    POST['email']."','".$_POST['subject']."','".$_POST['message']."','$target')";
    $result=mysql_query($sql);
    if (!$result)
        {
        echo "could not enter data";
        }
      else
        {
        echo "successfuly entered";
        }
    }    
?>

此PHP页面必须在后台运行,当我单击提交按钮时,消息框应显示成功。

2 个答案:

答案 0 :(得分:2)

    if(! $result) {
     $msg = "could not enter data";
    }else{
       $msg = "successfuly entered";
     }
     header('Location: http://www.example.com/form.php?message=$msg');
    //Redirect to form page with set message.

在表单页面中添加脚本以显示消息

 if(isset($_GET['message'])){
    print $_GET['message'];
  }

根据您的代码,此解决方案 另一种选择是使用ajax。

答案 1 :(得分:2)

将页面的回声部分编辑为

第二页

$rspnse = "";
if(!$result){
  $rspnse = "Error";
}
else{
  $rspnse = "Success";
}
header('Location: previous_page.php?response='.$rspnse);

previous_page.php替换为第一页的原始url

第一页

<?php
if(isset($_GET['response'])){
?>
<script>
alert('<?php echo $_GET['response'] ?>');
</script>
<?php
}
?>

希望这会有所帮助......