foreach if-else сломать помощь - PullRequest
2 голосов
/ 10 мая 2011
foreach($sites as $url)
{
    print_r($url);  
    $db = mysql_connect("localhost","root","11") or die("\nerror connecting".  mysql_error());  
    mysql_select_db("website_categorization") or die("\n error selecting database" );  
    mysql_real_escape_string($url);  
    mysql_query("INSERT INTO url_main(Url) VALUES('$url')") or trigger_error(mysql_error());   
    $result = mysql_query("SELECT ID from url_main where url='$url'");  
    list($url_id) = mysql_fetch_row($result);  
    $keyword = get_meta_tags("http://".$url);                                   
    if(array_key_exists('keywords', $keyword))                                    
            $tag = $keyword['keywords'];  
    elseif(array_key_exists('Keywords', $keyword))  
            $tag = $keyword['Keywords'];  
    else  
         {  mysql_query("INSERT INTO uncategorized(Url) VALUES('$url')") or trigger_error(mysql_error());  
            break;  
         }  
}

Я хочу продолжить выполнение моей программы, даже если управление программой достигает оператора else. Можете ли вы помочь мне, что мне нужно сделать, чтобы моя программа работала для других значений $ url, даже если встречается другая структура ...

Это остальная часть кода.

$keyword_array = preg_split('/[\s,]+/ ', $tag);  
foreach( $keyword_array as $url_keyword )        
{  
        mysql_real_escape_string($url_keyword);  
        $query = "SELECT ID from category_keyword where Keyword='$url_keyword'";  
        $result = mysql_query($query);  
        while($row=mysql_fetch_array($result))  
        {
             $out = mysql_query("INSERT INTO url_keyword(Url_ID,Keyword,Keyword_ID) values ($url_id, '$url_keyword','$row[ID]')");  
        }  
        $query2 = "SELECT ID_Category, sum(Score) as score from `category_keyword` as ck ,`url_keyword` as uk where  ck.ID = uk.Keyword_ID and Url_ID=$url_id group by ID_Category";  
        $result2 = mysql_query($query2);  
    }

    while($row2 = mysql_fetch_array($result2))
    {
             print_r($row2);
            if( $row2['score'] > $THRES )
            {
                $query3="INSERT INTO url_category_map(Url_ID, Category_ID) values( $url_id, $row2[ID_Category])";
                $out3 = mysql_query($query3);
                $FLAG=true;
            }
     }
}

1 Ответ

1 голос
/ 10 мая 2011

Просто удалите break полностью.

...