我仍然对pre_match有点不满意。我试图将pre_match用于邮政编码这是我在访问页面时遇到的错误。
解析错误:语法错误,意外'/',在/home/valerie2/public_html/elinkswap/snorris/findstore.php中预期T_VARIABLE或'$'
这是我的代码:
<?php
$zip;
if (pre_match("/^[0-9]{5{$/", $zip)) {
echo " The Zip code must be a 5-digit number.";
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<title>Find Store</title>
<style type="text/css" title="text/css" media="all">
.error {
color: #F30;
}
h3 {
color: #00F;
}
body {
background-color: # FFCF73;
}
</style>
</head>
<body>
<form method="post" action="distance.php">
<p>Zip: <input type="text" name="zip" /><input type="submit" name="submit" value="find!"/></p>
</form>
</body>
</html>
我知道我做错了什么,我一直在经历它和一切。我只是想知道是否有人可以帮我理解我做错了什么。
答案 0 :(得分:1)
<?php
$zip;
if (pre_match("/^[0-9]{5{$/", $zip)) {
echo " The Zip code must be a 5-digit number.";
}
?>
关于这一切的一切都是错误的。试试这个:
<?php
if( preg_match("/^[0-9]{5}$/", $zip))
$error = "The Zip code must be a 5-digit number.";
?>
<!DOCTYPE .........
....
....
<?php echo $error ?>
纠正的事情:
{
取代}
答案 1 :(得分:-1)
在:
pre_match("/^[0-9]{5{$/", $zip)) {
使用单引号,如:
pre_match('/^[0-9]{5{$/', $zip)) {
我没有检查你的其余代码。
请参阅:http://us.php.net/manual/en/language.types.string.php#language.types.string.parsing了解更多关于双引号内$的含义。