Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 自动添加到文本框的斜杠_Php_Textbox_Slash - Fatal编程技术网

Php 自动添加到文本框的斜杠

Php 自动添加到文本框的斜杠,php,textbox,slash,Php,Textbox,Slash,我一直在绞尽脑汁,想弄明白为什么在我运行这个php脚本时,我页面上的每个by文本框中都有斜杠(“/”)。页面上的一切都很好。我什么都试过了,但它们就在那里。下面是我的全部代码。谢谢你的帮助! function validateInput($data, $fieldName){ global $error; if (empty($data)){ echo "\"$fieldName\" is a required field.<br />\n";

我一直在绞尽脑汁,想弄明白为什么在我运行这个php脚本时,我页面上的每个by文本框中都有斜杠(“/”)。页面上的一切都很好。我什么都试过了,但它们就在那里。下面是我的全部代码。谢谢你的帮助!
function validateInput($data, $fieldName){
    global $error;
    if (empty($data)){
        echo "\"$fieldName\" is a required field.<br />\n";
        ++$error;
        $retval = "";
    } else if (!preg_match('/[^A-Za-z]/', $data) == 0){
        echo "\"$fieldName\" can only contain letters.<br />\n";
        ++$error;
        $retval = "";
    } else {
        $retval = trim($stripslashes($data));
    }
    return ($retval);
}

function validateAddress($data, $fieldName){
    global $error;
    if (empty($data)){
        echo "\"$fieldName\" is a required field.<br />\n";
        ++$error;
        $retval = "";
    } else if (!preg_match('/[^0-9A-Za-z]/', $data)){
        echo "\"$fieldName\" can only contain letters or numbers.<br />\n";
        ++$error;
        $retval = "";
    } else {
        $retval = trim(stripslashes($data));
    }
    return ($retval);
}

function validateNumber($data, $fieldName){
    global $error;
    if (empty($data)){
        echo "\"$fieldName\" is a required field.<br />\n";
        ++$error;
        $retval = "";
    } else if (!is_numeric($data)){
        echo "\"$fieldName\" must contain only numbers.<br />";
        ++$error;
        $retval = "";
    } else if (strlen($data) != 10){
        echo "\"$fieldName\" must be 10 numbers long.<br />";
        ++$error;
        $retval = "";
    } else {
        $retval = trim(stripslashes($data));
    }
    return ($retval);
}

function validateEmail($data, $fieldName){
    global $error;
    if (empty($data)){
        echo "\"$fieldName\" is a required field.<br />\n";
        ++$error;
        $retval = "";
    } else {
        $retval = trim(stripslashes($input));
        $pattern = "/^[\w-]+(\.[\w-]+)*@" .
            "[\w-]+(\.[\w-]+)*" .
            "(\.[a-z]{2,})$/i";
        if (preg_match($pattern, $retval) == 0){
            echo "\"$fieldName\" is not a valid email address.<br />\n";
            ++$error;
        }
    }
    return($retval);
}

function displayForm($name, $email, $address, $phone){
    include("header.html");
    ?>
    <div class="center">
    <form name="contact_us" action="contact_us.php" method="post">
    <p>Your Name: <input type="text" name="name" value=<?php echo $name; ?> /></p>
    <p>Your Email: <input type="text" name="email" value=<?php echo $email; ?> /></p>
    <p>Your Address: <input type="text" name="address" value=<?php echo $address; ?> /></p>
    <p>Your Phone Number: <input type="text" name="phone" value=<?php echo $phone;?> /></p>
    <p><input type="submit" name="Submit" value="Send" />&nbsp;
    <input type="reset" value="Clear"/>
    </form>
    </div>
    <?php
    include("footer.html");
}

$showForm = TRUE;
$error = 0;
$name = "";
$email = "";
$address = "";
$phone = "";

if (isset($_POST['Submit'])){
    $name = validateInput($_POST['name'], "Name");
    $email = validateEmail($_POST['email'], "Email");
    $address = validateAddress($_POST['address'], "Address");
    $phone = validateNumber($_POST['phone'], "Phone");

    if ($error == 0)
        $showForm = FALSE;
    else 
        $showForm = TRUE;
}

if ($showForm == TRUE){
    if ($error > 0)
        echo "<p>Please re-enter the form information below.<br/>\n";
    displayForm($name, $email, $address, $phone);
} else {
    echo "Your contact information has been recorded. Thank you!";
}
?>
函数validateInput($data,$fieldName){
全局$错误;
if(空($数据)){
echo“\”$fieldName\”是必填字段。
\n; ++$error; $retval=“”; }如果(!preg_match('/[^A-Za-z]/',$data)==0,则为else{ echo“\”$fieldName\“只能包含字母。
\n”; ++$error; $retval=“”; }否则{ $retval=trim($stripslashes($data)); } 返回($retval); } 函数validateAddress($data,$fieldName){ 全局$错误; if(空($数据)){ echo“\”$fieldName\”是必填字段。
\n; ++$error; $retval=“”; }如果(!preg_match('/[^0-9A-Za-z]/',$data))为else{ echo“\”$fieldName\“只能包含字母或数字。
\n”; ++$error; $retval=“”; }否则{ $retval=trim(stripslashes($data)); } 返回($retval); } 函数validateEnumber($data,$fieldName){ 全局$错误; if(空($数据)){ echo“\”$fieldName\”是必填字段。
\n; ++$error; $retval=“”; }如果(!是数字($data))则为else{ echo“\”$fieldName\”只能包含数字。
; ++$error; $retval=“”; }否则如果(strlen($data)!=10){ echo“\”$fieldName\”的长度必须为10个数字。
; ++$error; $retval=“”; }否则{ $retval=trim(stripslashes($data)); } 返回($retval); } 函数validateEmail($data,$fieldName){ 全局$错误; if(空($数据)){ echo“\”$fieldName\”是必填字段。
\n; ++$error; $retval=“”; }否则{ $retval=trim(stripslashes($input)); $pattern=“/^[\w-]+(\.[\w-]+)*@”。 “[\w-]+(\[\w-]+)*”。 “(\[a-z]{2,})$/i”; 如果(预匹配($pattern,$retval)==0){ echo“\”$fieldName\”不是有效的电子邮件地址。
\n; ++$error; } } 返回($retval); } 函数displayForm($name、$email、$address、$phone){ 包括(“header.html”); ?> 您的姓名:/>

您的地址:/>


您必须在以下几行中引用您的
属性:

<input type="text" name="name" value=<?php echo $name; ?> />
因此,默认情况下,您的输入框中会填充一个
/
。若要修复此错误(并避免其他可能的错误),请引用您的
$name

<input type="text" name="name" value="<?php echo htmlspecialchars($name); ?>" />

PHP运行addslashes()默认情况下,在所有GET、POST和COOKIE数据上。

不确定这是否会影响代码,但如果变量包含空格,则应引用
属性:例如
@mc10,我打赌这就是问题所在。
…value=/>
当值为空时,表示的是
…value=/>
,而您只是表示值是
/
。就像Jon说的,看起来你从来没有为你的
值=“随便什么”输出引号
字段。另外,
validateInput
中的
$
条斜线之前的
$
可能是一个打字错误。因此您应该让
添加引号来修复它!真不敢相信这是一个如此简单的错误。非常感谢!
<input type="text" name="name" value="<?php echo htmlspecialchars($name); ?>" />