2016-01-22 48 views
0

我正在嘗試製作if,它將嘗試通過搜索後獲取文檔的一行。因此它在文檔中搜索「註冊器句柄」並獲得該行的全部輸出。搜索文檔中的文本並將行作爲輸出

我的是,問題是,我得到這個錯誤:Notice: Undefined index: Registrar Handle in C:\xxxx\xxxx\xxx\xx on line 29

將是很好,如果有人有一個解決方案,也許有它爲什麼發生的解釋?

$commandR = "whois ".mysql_result($domain, 0); 

$outputR = shell_exec($commandR); 
$fhR = fopen('R.txt','w+'); 
fwrite($fhR,$outputR); 
fclose($fhR); 
    { 
    //.no 
    if(strpos(file_get_contents("./R.txt"),$_GET['Registrar Handle'])){ 
     $fhR = fopen('A.txt','r'); 
     $R = fgets($_GET); 
     fclose($fhA); 
     Echo $R; 
     //mysql_query("UPDATE `dom_oversikt`.`server1` SET `Registrar`='".$R."' WHERE `id` = '$id';");  
    } 
+0

你有什麼問題? –

+0

@u_mulder我更新了一點 – Leifus

+2

[PHP:「Notice:Undefined variable」和「Notice:Undefined index」]的可能重複(http://stackoverflow.com/questions/4261133/php-notice-undefined-variable- and-notice-undefined-index) –

回答

0

可以遍歷剛剛創建的文件,獲取文件的每一行,直到達到它的結束和回聲/返回包含你所提到的串線。

$searchedString = 'Registar Handle'; 
if (($handle = fopen("./R.txt", "r")) !== false) { 
    while (!feof($handle)) { 
     $currentLineInFile = fgetss($handle, 4096); 
     if(false !== strpos($currentLineInFile, $searchedString)){ 
      echo $currentLineInFile; 
     } 
    } 

    fclose($handle); 
} 

有人可能會說,你可以使用preg_match可以不用strpos,但它更復雜和更快速的(根據該SO answer指向PHP文檔本身)。

關於你的錯誤,這只是由於沒有關鍵「註冊器手柄」數組$ _GET英寸

相關問題