作者iii125 (小 i)
看板Ajax
標題[問題] Ajax的.open問題
時間Fri Oct 1 09:42:32 2010
最近我目前遇到一個奇怪的AJAX問題
function checkUser(str)
{
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","check_uid.php?q="+str,true); //傳值成功
xmlhttp.open("GET","/amfphp/services/EventTrigger.php?q="+str,true);
//傳值失敗
xmlhttp.send();
}
而我在這兩個PHP檔裡面都是用$q=$_GET["q"];
但是我同一資料夾內的PHP檔案收的到值 子資料夾內的的PHP卻收不到
請問這到底是哪裡出了錯?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.39.59.198
※ 編輯: iii125 來自: 114.39.59.198 (10/01 09:48)
1F:→ chrisQQ:絕對路徑應該是錯的?你直接貼到網址列應該也不行吧? 10/01 09:56
2F:→ TonyQ:路徑寫錯的機率非常高。 10/01 11:13
※ 編輯: iii125 來自: 140.127.220.44 (10/01 13:10)
3F:→ chrisQQ:請先確定這個路徑 /amfphp/services/EventTrigger.php 10/01 19:37
我確定我上面的路徑是對的
而我的index檔是在我的主機的fb2資料夾下 然後我試了我check_uid.php
可以之後我才將EventTrigger.php的檔案路徑省略了/fb2/
不知道這樣會不會有問題 (不過我之前有試過也不太行就是了QQ)
※ 編輯: iii125 來自: 114.39.54.195 (10/01 22:08)
4F:推 s25g5d4:把前面的斜線拿掉看看 10/01 22:33
5F:→ chrisQQ:如果你確定兩隻程式一樣…把有關檔案的絕對或相對路徑 10/02 01:51
6F:→ chrisQQ:列出來應該就能夠知道問題所在了,另外 .open 有 error ? 10/02 01:51
感謝各位的幫忙 我找到我bug的地方了 我的EventTrigger.php裡面的寫法是
<?php
class EventTrigger{
public function __construct()
{
mysql_connect=....
$q=$_GET["q"];
}
function XXX()
{
:
:
}
}
?>
結果這樣值都收不到 反而如果我寫在class外面就可以了
那有甚麼方法可以讓他連class裡面有可以收的到嗎@@?
麻煩了
※ 編輯: iii125 來自: 114.27.130.173 (10/02 11:32)
7F:→ TonyQ:你把EventTrigger 的code 寫清楚吧 orz 10/02 11:36
8F:→ TonyQ:理論上$_GET應該是全域的 有跑到應該就有拿到 10/02 11:37
9F:→ TonyQ:可能__construct 根本沒進去,你確認一下你php版本是php4還 10/02 11:37
10F:→ TonyQ:是php5 10/02 11:37
http://tinyurl.com/28kkgo7 這是我的EventTrigger版本上應該沒有問題
※ 編輯: iii125 來自: 140.127.220.28 (10/02 12:17)
11F:→ TonyQ:http 404 , 版本沒有問題 , 所以你是 php4 還是 php5 ..? 10/02 12:25
12F:→ TonyQ:這麼說好了 你直接連 10/02 12:27
14F:→ TonyQ:如果這樣的連結有資料,那就不是js 的問題。 10/02 12:28
15F:→ TonyQ:然後根據你的描述,看起來是__constructor 沒進去, 10/02 12:28
16F:→ TonyQ:如果你的環境不幸是用php4 ,你就會發現 __constructor 在 10/02 12:28
17F:→ TonyQ:PHP4 是沒有意義的。只有PHP5 以後才能把 class 寫成這樣 10/02 12:29
18F:→ TonyQ:還有一個可能性,他可能有跑到但是 $q 沒有被拿來用 10/02 12:31
19F:→ TonyQ:$q 會是什麼 成員嗎? (因為你的event trigger原始碼目前 10/02 12:32
http://tinyurl.com/2f4jb3b 新的
※ 編輯: iii125 來自: 140.127.220.28 (10/02 12:35)
20F:→ TonyQ:看起來好像是成員變數沒出去的問題。 10/02 12:41
21F:→ TonyQ:$q 改寫成 $this->q 並把$q 放到成員去宣告應該會work。 10/02 12:42
22F:→ TonyQ:in php5 10/02 12:42
23F:→ TonyQ:chris 你幫他看看吧 php 你比我熟 XD 10/02 12:42
24F:→ chrisQQ:看起來像是沒 new instance 所以沒進去 constructor 10/02 14:34