2013-03-14 118 views
0

我會承認我已經看到類似於我的問題的其他問題。然而,我仍然對這個錯誤意味着什麼,更不用說如何解決它了。wget未定義偏移

當我通過瀏覽器執行PHP腳本時,它工作正常。沒有錯誤返回。但是,當它運行作爲通過wget的cron作業(或捲曲)我的事件處理程序的報告:「未定義抵消:84」

function MLSEscapeValues($pieces){ 
    // escape all of the values in the array 

    global $ExtraDebugInfo; // additional argument for error handler 

    $PieceCount = count($pieces); 

    for($k=0;$k <= ($PieceCount-1);$k++){ 

     $ExtraDebugInfo .= "PieceCount = $PieceCount and k = $k and value = ".$pieces[$k]."<br>"; 
     $pieces[$k] = mysql_real_escape_string($pieces[$k]); 

    } 

    return $pieces; 
} 

我驗證過索引數組包含所有行的數據,但不是所有的字段具有值(預期)。

感謝您的協助。

編輯:

的$片列

Pieces[0] = 2.57 
Pieces[1] = 21-30 Years 
Pieces[2] = Traditional 
Pieces[3] = 208 
Pieces[4] = 
Pieces[5] = 0 
Pieces[6] = Slab 
Pieces[7] = 3 
Pieces[8] = 0 
Pieces[9] = 4 
Pieces[10] = 
Pieces[11] = 1 
Pieces[12] = City 
Pieces[13] = Frame,Wood Siding 
Pieces[14] = Central Electric,Heat Pump 
Pieces[15] = County 
Pieces[16] = Breakfast Room,Formal Dining 
Pieces[17] = Directions 
Pieces[18] = 2013-01-05T14:59:58.607 
Pieces[19] = Ceiling Fan(s),Dishwasher,Rng/Oven- Electric,Smoke Detector 
Pieces[20] = 
Pieces[21] = Sat Dish Allowed 
Pieces[22] = 1 
Pieces[23] = 1 
Pieces[24] = Great Room 
Pieces[25] = Earth Contact,Ranch 
Pieces[26] = 1 
Pieces[27] = 2 
Pieces[28] = Attached,Front Entry 
Pieces[29] = Central Electric,Heat Pump 
Pieces[30] = 0 
Pieces[31] = 
Pieces[32] = 
Pieces[33] = No 
Pieces[34] = Walk-In Closet 
Pieces[35] = agentid 
Pieces[36] = Name 
Pieces[37] = 800-555-1212 
Pieces[38] = 
Pieces[39] = id 
Pieces[40] = Name 
Pieces[41] = 800-555-1211 
Pieces[42] = 
Pieces[43] = Excl Right To Sell 
Pieces[44] = 
Pieces[45] = Acreage,Level,Treed 
Pieces[46] = 
Pieces[47] = 23828274 
Pieces[48] = 1794131 
Pieces[49] = 
Pieces[50] = Enclosed Porch,Main Floor BR,Main Floor Master 
Pieces[51] = 11 
Pieces[52] = 2012-08-20T14:51:09.967 
Pieces[53] = 159900 
Pieces[54] = 
Pieces[55] = 
Pieces[56] = Composition 
Pieces[57] = 
Pieces[58] = 
Pieces[59] = School Dist 
Pieces[60] = Elementary 
Pieces[61] = Middle 
Pieces[62] = High School 
Pieces[63] = 
Pieces[64] = 2710 
Pieces[65] = State 
Pieces[66] = Temporarily Off Market 
Pieces[67] = FirstName 
Pieces[68] = E 
Pieces[69] = 7000 
Pieces[70] = Circle 
Pieces[71] = Oak 
Pieces[72] = Single Family 
Pieces[73] = 2109 
Pieces[74] = Private 
Pieces[75] = Main Level,Laundry Room 
Pieces[76] = 
Pieces[77] = 
Pieces[78] = 
Pieces[79] = 
Pieces[80] = City/Public 
Pieces[81] = Cash,Conventional,FHA,VA 
Pieces[82] = 1986 
Pieces[83] = 99999 
Pieces[84] = 
Pieces[85] = 
+0

你能後輸入數組和返回數組? – 2013-03-14 16:41:00

+0

是的,我們需要知道'$ pieces'的初始值和'$ pieces'的返回值。 ($ k = 0; $ k <$ PieceCount-1); $ k ++){for' {'。 – 2013-03-14 16:44:00

+0

通常,wget/curl請求不包含引用者和用戶代理信息,因此如果您的腳本正在使用它們,它將會有所作爲。 – aram90 2013-03-14 16:47:09

回答

0

的樣本數據有沒有足夠的信息,但你$pieces都來自(或您正在建設)的* SQL查詢嗎?機會是語法錯誤,並且從任何數據庫函數返回的值不是您期望的數組。

第一站是echo任何錯誤,看看是否是這種情況。

mysqli
PDO
mysql < - 不應該使用這個很多

+0

沒有,這實際上是通過curl()從外部源導入的數據。這是一個由供應商提供的專業數據庫,並不好......這就是友好的。我不能多說這些,因爲我從他們這邊不瞭解多少。我得到一個精簡的編碼XML格式的飼料,我導入到我自己的MySQL數據庫。我將它解析成一個索引數組,並傳遞給上面的函數,返回轉義值。 – Raythe 2013-03-14 18:43:40

+0

@Raythe對於您的確切設置仍然茫然不知 - 當您獲取此數據時,您是否試圖將其保存到實際文件中?這個想法是,當通過cron運行腳本(命令行中的IE)時,php解釋器受到文件系統上不同權限的限制,無法讀/寫。 – Emissary 2013-03-14 18:54:04

+0

我只是把數據和「替換成」到MySQL數據庫中。 – Raythe 2013-03-14 19:00:39