本文目录一览:
- 1、php500错误,下面是eintragen.php文件的代码,感觉代码没错,就是不知道为什么点xiugai.php之后显示500错误
- 2、这段php代码有错没
- 3、php 程序运行没有提示错误,但是也无法执行,一段很简单的代码,求解
- 4、php中赋值是没有任何语法错误但是在浏览器中提示错误
php500错误,下面是eintragen.php文件的代码,感觉代码没错,就是不知道为什么点xiugai.php之后显示500错误
#$expansion = mysql_real_escape_string($_POST["expansion"]);
改成:
//$expansion = mysql_real_escape_string($_POST["expansion"]);
if (!preg_match('/^[^\x00-\x20()@,;:\\".[\]\x7f-\xff]+(?:\.[^\x00-\x20()@,;:\\".[\]\x7f-\xff]+)*\@[^\x00-\x20()@,;:\\".[\]\x7f-\xff]+(?:\.[^\x00-\x20()@,;:\\".[\]\x7f-\xff]+)+$/i', $email))
{
echo "scriptalert('你的邮箱地址不正确!');location.href='xiugai.php';/script";
exit();
}
{ //////////////////////////你为什么在这里用花括号????????????啥意思????????
你可以一步步的调试:比如,你可以在你认为有问题的地方加上exit('test1');exit('test2');以此类推,看看到底在哪一行出的问题?
500的错误,也有可能是数据库的问题,你把执行时每个sql语句echo出来,然后复制到phpmyadmin里面执行一下,看看有没有错误?
xiugai.php和eintragen.php是在同一个路径下面吗?
你可以加上绝对路径,比如:/eintragen.php
这段php代码有错没
PHP标记有4种不同的风格可供我们使用,如下所示:
XML风格:
?php … … ?
这是PHP推荐使用的标记风格。服务器管理员不能禁用这种风格的标记,如果将 PHP 嵌入到 XML 或 XHTML 中则需要使用 ?php ? 以保持符合标准。
简短风格:
? … … ?
这种标记风格是最简单的,它遵循SGML(标准通用置标语言)处理说明的风格。但是系统管理员偶尔会禁用它,因为他会干扰XML文档的声明。只有在通过 php.ini 配置文件中的指令 short_open_tag 打开后才可用,或者在 PHP 编译时加入了 --enable-short-tags 选项。
SCRIPT风格:
script language="php" … … /script
这种标记是最长的,如果读者使用过JavaScipt或VBScript,就会熟悉这种风格。如果读者所使用的HTML编辑器无法支持其他的标记风格,可以使用它。
ASP风格:
% …… %
如果在php.ini配置文件设定中启用了asp_tags选项就可以使用它。这是为习惯了ASP或ASP.NET的编程风格而设计的。在默认情况下该标记是被禁用了。
总之其中两种,?php ? 和 script language="php" /script 总是可用的。另两种是短标记和 ASP 风格标记,可以在 php.ini 配置文件中打开或关闭。尽管有些人觉得短标记和 ASP 风格标记很方便,但移植性较差,通常不推荐。
php 程序运行没有提示错误,但是也无法执行,一段很简单的代码,求解
$k=1;$k=$n-$i;
这里会死循环
简单说明下
for (比如这里循环 5次) {
for (比如这里循环10次) {
这种嵌套的循环,内循环会优先于外循环的,也就是说,外循环第一次的时候,这里开始循环,一直到这里10次循环完毕后,外循环开始第二次循环,接着内循环又完成10次,外循环才会进入第3次。。。。。。。。。。。。依此论推
而你的内循环的条件, $k = 1, 这个时候k的值是1, 接着你有 $k = $n - $i, 开始$n 是3, 外循环第一次, $i就是1, 3-1= 2, 所以,最终你的k是2, 而你这代码等于没有给k一个终止数字,那么,就会$k++一直下去,不知道到什么数,所以,是死循环!
}
}
php中赋值是没有任何语法错误但是在浏览器中提示错误
出现上面这些是 PHP 的提示而非报错,PHP 本身不需要事先声明变量即可直接使用,但是对未声明变量会有提示。一般作为正式的网站会把提示关掉的,甚至连错误信息也被关掉。
解决方法:
方法1:服务器配置修改
修改 php.ini 中的 error配置下错误显示方式:将error_reporting = E_ALL 修改为
error_reporting = E_ALL ~E_NOTICE
修改后重启下APCHE服务器,方可生效。
方法2:对变量进行初始化。
方法3:做判断isset($_post['']),empty($_post['']) if --else
方法4:在出现notice代码之前加上@,@表示这行有错误或是警告不要输出,@$username=$_post['username'];
在变量前面 加上一个 @ ,如 if (@$_GET['action']=='save') { ...
方法5:最后一种很实用,是别人写的一个函数,通过这个函数进行传递值。
定义一个函数:
复制代码 代码如下:
function _get($str){
$val = !empty($_GET[$str]) ? $_GET[$str] : null;
return $val;
}
然后在用的时候,直接用 _get('str') 代替 $_GET['str'] 就行啦~