2011-10-03 58 views
-1

我有一個將POST數據發送到PHP網站的代碼。代碼:ASIHTTPRequest給我的問題

request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"http://www.example.com/Testing/Testing.php"]]; 
    [request setPostValue:targettype forKey:@"targettype"]; 
    [request setPostValue:targetmethod forKey:@"targetmethod"]; 
    [request setPostValue:sourceurl forKey:@"sourceurl"]; 
    [request setPostValue:filepath forKey:@"filepath"]; 

    [request setDelegate:self]; 
    [request startAsynchronous]; 

這是完美的工作。一旦發送了這些數據並且PHP腳本輸出了一些數據,腳本就會創建一個.txt文件。一旦iPhone讀取.txt文件的內容,我想運行ASIHTTPRequest到一個不同的PHP腳本,該腳本應該刪除這個.txt文件。從PHP的角度來看,一切似乎都在發揮作用,並且數據正在被iPhone完美接收。但是,一旦收到數據,我有一個if ... then語句來檢查數據,然後一旦數據存在,我想調用ASIHTTPRequest來刪除.txt。這是我用的POST數據到新的位置的PHP代碼:

{... 
    imageView.image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString: string]]]; 
      [self deletefile]; 
    } 

-(void) deletefile { 
     request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"http://www.prajoth.com/Testing/Testing.php"]]; 
     [request setPostValue:@"hey" forKey:@"targettype"]; 
     [request setPostValue:@"hey" forKey:@"targetmethod"]; 
     [request setPostValue:@"hey" forKey:@"sourceurl"]; 
     [request setPostValue:filepath forKey:@"filepath"]; 

     [request setDelegate:self]; 
     [request startAsynchronous]; 


    } 

這是出於某種原因,扔了一個EXC_BAD_ACCESS。雖然控制檯不顯示任何錯誤消息。請幫忙!

+1

標準的iOS調試技術適用於:至少從EXC_BAD_ACCESS的調試器發佈堆棧跟蹤,並嘗試使用NSZombies運行 – JosephH

回答

0

根據您粘貼的代碼,很難弄清楚這一點。你的應用程序在哪裏拋出異常?這可能可能是你的全局變量之一不再存在(例如,filepath),但是它也可能是你的代碼中其他地方的東西。你可能會猜到,當你嘗試訪問一個不再在內存中的對象時,會發生這種消息,所以也許你正在發佈一些你現在依賴的東西?

+0

當調用「deletefile」時,我的應用程序拋出異常。它正在完美地工作,直到該行被稱爲。第一個請求由於某種原因完美工作,但第二個請求導致該問題。調試器沒有顯示任何問題 – Prajoth