繁体   English   中英

我有一个未定义的变量,但我不知道为什么

[英]I have an undefined variable, but i don't know why

这是我遇到问题的代码: http//tutsforweb.blogspot.hu/2012/02/php-installation-script.html

Notice: Undefined variable: pre_error in C:\wamp\www\torolni\install.php
on line 110 Call Stack #TimeMemoryFunctionLocation 
10.0022297152{main}( )..\install.php:0 20.0022297824step_2( )..\install.php:13

我有同样的问题,作为第一个评论者,但我不知道如何“关闭你的PHP ini文件中的通知消息”。 那是什么? 我在哪里可以找到它? 我用WAMP。 这可能是“真正的”服务器中的问题吗? (不在localhost中)

由于错误,我无法进入第3步。 请帮帮我。

他们建议不要显示PHP通知,但我认为这是不好的建议,因为不是修复可能的代码问题,而是方法隐藏了消息。 修复probem将启动变量:

function step_2(){ $pre_error = ''; //... }

让我先说关闭通知隐藏你的PHP错误根本不是很好的做法!

查看错误,您无法echo不存在的变量。 在事情正常工作的情况下,没有定义$pre_error 您可以在“步骤2”的开头声明这一点。

function step_2(){
    $pre_error = '';
    if....

更新if语句中的条件也是一个好主意,这样在测试数值之前检查数组键是否存在。 例如&& $_POST['pre_error'] != ''应更改为&& (isset($_POST['pre_error']) && $_POST['pre_error'] != '')

单击任务栏中的WAMP图标> PHP> php.ini。 这将带您进入设置基本PHP行为的文本文件。 您可以按照以下引用自定义这些行为: http//www.php.net/manual/en/function.error-reporting.php

另外,请不要制作PHP安装脚本。 各种各样的安全问题都会让他们头疼,特别是如果你没有使用SSL上的安全FTP。

要找到你的php.ini文件:

选项1:导航到计算机上的相应文件夹,然后使用记事本打开php.ini文件。 我的具体是C:\\ wamp \\ bin \\ apache \\ Apache2.2.17 \\ bin (你的确切位置和php的版本可能略有不同。

选项2单击系统托盘中的wamp图标 - > PHP-> php.ini

在记事本中按ctrl + f并搜索display_errors = On 将此设置为display_errors = Off

重新启动wamp服务器,不再显示通知

然而,正如其他人所提到的那样,这是一个非常糟糕 我还建议你在完成教程后重新打开它们,因为在开发时显示错误是非常宝贵的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM