PHP 常見鬱悶問題答案
轉自喜悅村
在PHP4.2以後的版本register_global預設為off
若想取得從另一頁提交的變數:
方法一:在PHP.ini找到register_global,並把它設定為on.
方法二:在接收網頁最前面放上這個extract($_POST); extract($_GET);(注意extract($_SESSION)前必須要有Session_Start()).
方法三:一個一個讀取變數$a=$_GET["a"]; $b=$_POST["b"]等,這種方法雖然很麻煩,但比較安全.
PHP程式碼:
Ob_Start();
Session_Start();
Echo "
"; <br>Echo "本頁得到的_GET變數有:"; <br>Print_R($_GET); <br>Echo "本頁得到的_POST變數有:"; <br>Print_R($_POST); <br>Echo "本頁得到的_COOKIE變數有:"; <br>Print_R($_COOKIE); <br>Echo "本頁所得到的_SESSION變數:"; <br>Print_R($_SESSION); <br>Echo "
";
?>
為什麼我傳送變數到另一網頁時,只得到前半部,以空格開頭的則全部遺失 PHP代碼:--------------------------------------- -----------------------------------------
$Var="hello php";//修改為$Var=" hello php";試試得到什麼結果
$post= "receive.php?Name=".$Var;
header("location :$post");
?>
------------------------------------ --------------------------------------------
receive.php的內容:
PHP程式碼:----------------------------------------- ---------------------------------------
Echo "
"; <br>Echo $_GET["Name"]; <br>Echo "
";
?>
-------------- -------------------------------------------------- ----------------
正確的方法是:
PHP程式碼:-------------- -------------------------------------------------- ----------------
$Var="hello php";
$post= "receive.php?Name=".urlencode( $Var);
header("location:$post");
?>
------------------------- -------------------------------------------------- -----
在接收頁面你不需要使用Urldecode(),變數會自動編碼.
規範你的SQL語句 在表格,欄位前面加上"` ",這樣就不會因為誤用關鍵字而出現錯誤,
當然我並不推薦你使用關鍵字.
例如
$Sql="INSERT INTO `xltxlm` (`author`, ` title`, `id`, `content`, `date`) VALUES ('xltxlm', 'use`', 1, 'criterion your sql string ', '2003-07-11100:000 🎜>我怎麼知道系統預設支援什麼函數
PHP程式碼:
------------------------------- -------------------------------------------------
$arr = get_defined_functions();
Function php() {
}
echo ,和自訂以函數phpn";
print_r($arr);
echo "";
?>
如何比較兩個日期相差幾天
PHP代碼: ------------------------------------- -------------------------------------------
$Date_1="2003-7-15";//也可以是:$Date_1="2003-6-25 23:29:14";
$Date_2="1982-10-1";
$Date_List_1=explode("-",$Date_1);
$Date_List_2=explode("-",$Date_2);
$d1=mktime(0,0,0,$Date_List_1[11] ,$Date_List_1[2],$Date_List_1[0]);
$d2=mktime(0,0,0,$Date_List_2[1],$Date_List_2[2],$Date_List_2[0]);
$Days=round(($d1-$d2)/3600/24);
Echo "偶已經奮鬥了 $Days 天^_^";
?>
資料放入資料庫和取出顯示在頁面需要注意什麼
入庫時$str=addslashes($str);
$sql="insert into `tab` (`content`) values(' $str')";
出庫時
$str=stripslashes($str);
顯示時
$str=htmlspecialchars(nl2br($str)) ;
http://www.bkjia.com/PHPjc/317038.html
www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/317038.htmlTechArticlePHP常見鬱悶問題答解轉自喜悅村在PHP4.2以後的版本中register_global默認為從另一頁提交的變數: 方法一: 在PHP.ini找到register...