PHP kullanarak dosyaları içine MySQL satır ayrıştırma çalışmıyor

2 Cevap php

Ben satır adını dosyalarının içine bütün bir MySQL tablosu ayrıştırmak çalışıyorum. Ancak, bu dosyaları bir sürü kaçırmış görünüyor, ve bu sadece düzgün çalışmıyor, ama ben yanlış anlamıyorum. İşte kullanıyorum ne:

$link = mysql_connect(...); //*Let's assume this is correct*
mysql_select_db(*This too*);
$query = "SELECT * FROM rules";
$result = mysql_query($query) or die(mysql_error());
$num = mysql_num_rows($result) or die(mysql_error());
for($x = 0;$x < $num;$x++) {
    $rules = mysql_fetch_assoc($result);
    $file = '';
    if($rules['except'])
        $file .= $common = str_replace(explode(',', $rules['except']), "", $common);
    if($rules['custom'])
        $file .= $rules['custom'];
    if($rules['css'])
        $file .= trim($rules['css'], ";")."{display:none !important;height:0px !important;width:0px !important;}";
    if($file == '') {
        $handle = fopen($rules['site'].'.css', 'w');
        fwrite($handle, $file);
    }
}

Herkes yanlış bir şey görebiliyor musun?

2 Cevap

Eğer aradığınız sorunun bu hat if($file == '') { gibi görünüyor. $file boş, sadece eğer doğru olacaktır. Ama aşağıdaki gibi bir oposite koşulu gerektiğini düşünüyorum:

if($file != '') {

Ayrıca ben her zaman açtığınız dosyayı kapatmak öneririm:

if($file != '') {
   $handle = fopen($rules['site'].'.css', 'w');
   fwrite($handle, $file);
   fclose($handle);
}

ben ona bakarak Eğer yanılmıyorsam, bu hattı gibi görünüyor:

$file .= $common = str_replace(explode(',', $rules['except']), "", $common);

hep boş olurdu.