Summary and analysis of headaches for PHP beginners_PHP tutorial

WBOY
Release: 2016-07-13 17:33:21
Original
735 people have browsed it


 php(as the current mainstream development language)Summary of headaches for beginners!
 
 [1] Variables get, post, session cannot be passed between pages. In the latest php (As the current mainstream development language) Automatic global variables are turned off in the version, so to get the submitted variables from the previous page, use $_GET[foo], $_POST[foo], $_SESSION [foo] to get
Of course, you can also modify the automatic global variables to be on (php (as the current mainstream development language) .ini is changed to register_globals = On); considering compatibility, it is still forced It is better to familiarize yourself with the new writing method.
 
 【2】apache under Win32(the most popular WEB server platform on Unix platform)2 Using the get method to pass Chinese parameters will cause an error
test.php(as now Mainstream development language)?a=Hello&b=Hello
Passing parameters will cause an internal error
Solution: "test.php(as the current mainstream development language )?a=".urlencode(Hello)."&b=".urlencode(Hello)
 
 【3】Session under win32 does not work properly
 php( As the current mainstream development language).ini default session.save_path = /tmp
This is obviously the configuration under Linux, php under win32(as the current mainstream development language) Unable to read and write the session file, causing the session to be unusable
Just change it to an absolute path, for example session.save_path = c:windows emp
 
【4】Display error message
When php(As the current mainstream development language)When display_errors of .ini = On and error_reporting = E_ALL, all errors and prompts will be displayed. It is best to turn it on for error correction during debugging. If you used php before(As the current mainstream development language) Most of the writing error messages are about undefined variables. There will be a prompt when a variable is called before being assigned. The solution is to detect or block
. For example, if $foo is displayed, you can if(isset($foo)) echo $foo or echo @$foo
 
【5】Win32 Emails cannot be sent under mail()
The configured sendmail under Linux can be sent, but under win32 it is necessary to call the SMTP server to send emails
Modify php (as the current mainstream development language) .ini’s SMTP = ip //ip is an smtp server without verification function (hard to find online)
php (as the current mainstream development language) The best solution for sending emails The method is to use socket to send directly to the other party's email server without forwarding the server
 
【6】Initially installed MySQL (the best combination with PHP)If there is no password set, you should use
Update MySQL (The best combination with PHP) .user set password="yourpassword" where user="root"
Change password

【7】header already sent
This error usually occurs when you use HEADER. It may be due to several reasons: 1. You PRING or ECHO before using HEADER 2. There is a blank line in front of your current file 3. You may have INCLUDEd a file , this error will also occur if there is a blank line at the end of the file or the output. !
 
 【8】There is no change after changing php(as the current mainstream development language).ini
 Restart the web server, such as iis(Microsoft's WEB server platform ), apache(the most popular WEB server platform on Unix platform), etc., and then the latest settings will be applied
 
 【9】php(as the current Mainstream development language) Installed on 2003 (the installation method of ISAPI please ask experts for advice)
php (as the current mainstream development language) 4 php (as the current Mainstream development languages) 4isapi.dll seems to conflict with 2003, and can only be used with cgi (not many people are using it now) Mode installation
Step 1, first www.php (As the current mainstream development language)In an installation program under .net, I installed: php(As the current mainstream development language)-4.2.3-installer. exe, you can also find the latest version, and make sure your iis (Microsoft's WEB server) before installing php(as the current mainstream development language)-4.2.3-installer.exe Platform)6.0 is launched and can be accessed. After installation, go to the default website-->Application Configuration
Step 2: Click web service extension-->New web service extension.
Step 3: Extension-->php( As the current mainstream development language) , and then add
Step 4: Find the path of php (as the current mainstream development language) .exe and add it.
Step 5: Just confirm!
Step 6: Select the service extension of php(as the current mainstream development language), and then click Allow.
 
 【10】Sometimes the sql statement does not work and the database operation fails
The easiest way to debug is to echo the sql sentence and see if the value of the variable can be obtained
 
 【 11] The difference between include and require
There is not much difference between the two. If the file to be included does not exist, include prompts notice, and then continues to execute the following statement, require prompts a fatal error and exits
According to my testing, Under the win32 platform, they are included first and then executed, so it is best not to have include or require statements in the included files, which will cause directory confusion. Maybe the situation is different in *nux, I haven’t tested it yet
If you don’t want a file to be included multiple times, you can use include_once or require_once## to read and write document data
 function r($file_name) {
 $ filenum=@fopen($file_name,"r");
@flock($filenum,LOCK_SH);
$file_data=@fread($filenum,filesize($file_name));
@fclose( $filenum);
return $file_data;
}
function w($file_name,$data,$method="w"){

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/508613.htmlTechArticlephp (as the current mainstream development language) Summary of headaches for beginners! [1] Unable to transfer between pages The variables get, post, and session are in the latest version of php (as the current mainstream development language)...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!