首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用CSS定位PHP代码

用CSS定位PHP代码
EN

Stack Overflow用户
提问于 2013-11-12 17:02:12
回答 2查看 644关注 0票数 1

我有一个用HTML定位在页面上的表单,如果用户完成了表单,那么他们就会得到PHP消息的感谢。因为表单是用<form id="formIn"> CSS定位的,所以PHP现在处于错误的位置,有没有人知道如何定位这个位置,从而将PHP文本嵌套到表单中?我尝试将代码包含在PHP中,即

代码语言:javascript
复制
<div id=\"text\">

但是没有joy。

到目前为止使用的代码是:

代码语言:javascript
复制
<?php 
echo "* - All sections must be complete"."<br><br>";

$contact_name = $_POST['contact_name'];
$contact_name_slashes = htmlentities(addslashes($contact_name));
$contact_email = $_POST['contact_email'];
$contact_email_slashes = htmlentities(addslashes($contact_email)); 
$contact_text = $_POST['contact_text'];
$contact_text_slashes = htmlentities(addslashes($contact_text)); 

if (isset ($_POST['contact_name']) && isset ($_POST['contact_email']) && isset ($_POST['contact_text'])) 

{

if (!empty($contact_name) && !empty($contact_email) && !empty($contact_text)){


$to = '';
$subject = "Contact Form Submitted";
$body = $contact_name."\n".$contact_text;
$headers = 'From: '.$contact_email;

if (@mail($to,$subject,$body,$headers))

{
echo "Thank you for contacting us.";
}else{
echo 'Error, please try again later';
}

echo "";
}else{

echo "All sections must be completed.";
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-12 17:27:41

这样做的一个好方法是创建一个div,用于在表单页面中显示消息,然后从php脚本返回到表单页面,包括form.html?error=emailform.html?success到url。然后,使用javascript,您可以识别何时发生这种情况,并显示消息。

如果您需要一些代码示例,请进行注释。

编辑:假设您的php脚本检测到电子邮件字段未被填充,因此它将返回到包含url中的变量的表单网页:

代码语言:javascript
复制
<?php
if(!isset($_POST["email"]){
    header("location:yourformfile.html?error=email")
}
?>

然后,在您的表单网页中,您必须添加一些javascript,以便在URL中捕获该变量并在页面中显示一条消息:

Javascript:

代码语言:javascript
复制
function GetVars(variable){
    var query = window.location.search.substring(1);  //Gets the part after '?'
    data = query.split("=");  //Separates the var from the data
    if (typeof data[0] == 'undefined') {
        return false; // It means there isn't variable in the url and no message has to be shown
    }else{
        if(data[0] != variable){
            return false; // It means there isn't the var you are looking for.
        }else{
            return data[1];  //The function returns the data and we can display a message
        }
    }
}

在这个方法中,data[0]是var名称,data[1]是var数据。您应该实现如下方法:

代码语言:javascript
复制
if(GetVars("error") == "email"){
    //display message 'email error'
}else if(GetVars("error") == "phone"){
    //dislpay message 'phone error'
}else{
    // Display message 'Success!' or nothing
}

最后,为了显示消息,我建议使用HTML和CSS创建一个div,并将其动画化,使其与jQuery一起出现并消失。或者仅仅显示一个警报alert("Email Error");

票数 1
EN

Stack Overflow用户

发布于 2013-11-12 17:11:32

只需在表单之前或之后创建一个<div>,并在其上放置如果提交条件。喜欢,

代码语言:javascript
复制
<?php
if(isset($_POST['submit']))
{ ?>

<div>
   <!-- Your HTML message  -->
</div>

<?php } ?>

<form>

</form>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19935355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档