הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   [PHP] קוד שלא פועל כצפוי (https://hosts.co.il/forums/showthread.php?t=52446)

X-T 20-08-07 20:47

[PHP] קוד שלא פועל כצפוי
 
הקוד הבא:
PHP קוד:

    $i 0;
    
$dm 1;
    function 
showDomainResult($domain,$server,$findText){
    
       if (
checkDomain($domain,$server,$findText)){
       
$i++;
       if(
$dm == 1){
          echo 
'<tr bgcolor="#e2e2e2"><td><input type="checkbox" name="d'.$i.'" /><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:green;">פנוי</td></tr>';
       
$dm 0;
       }else{
       echo 
'<tr><td><input type="checkbox" name="d'.$i.'" /><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:green;">פנוי</td></tr>';
       
$dm 1;
       }
       
       }else{
       if(
$dm == 1){
       echo 
'<tr bgcolor="#e2e2e2"><td></td><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:red;">תפוס</td></tr>';
   
$dm 0;
   }
   else{
      echo 
'<tr><td></td><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:red;">תפוס</td></tr>';
   
$dm 1;
   }
   }
  } 

אמור להציג תוצאות של דומיין, טבלה ראשונה אמורה להיות אפורה, השניה לבנה וכך הלאה,

משום מה זה הכל לבן,

היכן השגיאה שלי?

Elad-A 20-08-07 20:53

תעשה משהו כזה

קוד:


if($i &#37; 2 == 0)
{
//bgcolor = gray
}
else
{
//bgcolor = white
}


X-T 20-08-07 21:01

ציטוט:

נכתב במקור על ידי Elad-A (פרסם 545421)
תעשה משהו כזה

קוד:


if($i % 2 == 0)
{
//bgcolor = gray
}
else
{
//bgcolor = white
}



לא עוזר, זה רק אפור עכשיו :\

Tomer 20-08-07 21:05

ואנחנו יודעים מה עשית כדי לעזור לך.. תפרט!

4ior 20-08-07 21:06

זה בגלל שהi הdm חיצוני לפונקציה. או שתעשה global או שתשים אותו כחלק מהמשתנים בפונקציה.

X-T 20-08-07 21:14

ציטוט:

נכתב במקור על ידי 4ior (פרסם 545430)
זה בגלל שהi הdm חיצוני לפונקציה. או שתעשה global או שתשים אותו כחלק מהמשתנים בפונקציה.


ניסיתי לא פועל לי

PHP קוד:

    $i 0;
    global 
$dm;
    
$dm 0;
    
$errors 0;
    function 
showDomainResult($domain,$server,$findText){
    
       if (
checkDomain($domain,$server,$findText)){
       
$i++;
       
$errors++;
       if(
$dm == 1){
       
$dm 0;
          echo 
'<tr bgcolor="#e2e2e2"><td><input type="checkbox" name="d'.$i.'" /><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:green;">פנוי</td></tr>';
       echo 
$dm;
       }else{
       
$dm 1;
       echo 
'<tr bgcolor="#ffffff"><td><input type="checkbox" name="d'.$i.'" /><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:green;">פנוי</td></tr>';
       echo 
$dm;
       }
       }else{
       if(
$dm == 1){
       
$dm 0;
       echo 
'<tr bgcolor="#e2e2e2"><td></td><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:red;">תפוס</td></tr>';
   echo 
$dm;
   }
   else{
      echo 
'<tr bgcolor="#ffffff"><td></td><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:red;">תפוס</td></tr>';
   
$dm 1;
   echo 
$dm;
   }
   }
  } 


Elad-A 20-08-07 21:19

ה global אמור לבוא בתוך הפונקציה..

X-T 20-08-07 21:25

אין שינוי.

הקוד עד כה
PHP קוד:

    function showDomainResult($domain,$server,$findText){
    global 
$i,$dm,$errors;
    
$i 0;
    
$dm 0;
    
$errors 0;
    
       if (
checkDomain($domain,$server,$findText)){
       
$i++;
       
$errors++;
       if(
$dm == 0){
          echo 
'<tr bgcolor="#e2e2e2"><td bgcolor="white"><input type="checkbox" name="d'.$i.'" /><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:green;">פנוי</td></tr>';
       
$dm 1;
       }else{
       echo 
'<tr bgcolor="white"><td bgcolor="white"><input type="checkbox" name="d'.$i.'" /><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:green;">פנוי</td></tr>';
       
$dm 0;
       }
       }else{
       if(
$dm == 0){
       echo 
'<tr bgcolor="#e2e2e2"><td bgcolor="white"></td><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:red;">תפוס</td></tr>';
   
$dm 1;
   }
   else{
      echo 
'<tr bgcolor="white"><td bgcolor="white"></td><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:red;">תפוס</td></tr>';
   
$dm 0;
   }
   }
  } 

זה כאילו לא מקבל את זה שאני עושה SET למשתנה משום מה.

Elad-A 20-08-07 21:34

מה אתה מנסה בדיוק לעשות? בדיקה לכמה דומינים?
אם לא, אז למה כל פעם רקע שונה? תסביר את עצמך..

X-T 20-08-07 21:35

מה שאני מנסה לעשות שיופיע לי רקע שונה כל פעם לדוגמא:
hosts.co.il -תפוס ( רקע אפור )
hosts.org.il -פנוי ( רקע לבן )
hosts.com-פנוי ( רקע אפור )
hosts.org -פנוי ( רקע לבן )

*לצבע אין שום קשר לתוצאה אלה לסדר שהתוצאות מוצגות.

קוד נכון לעכשיו
PHP קוד:

function showDomainResult($domain,$server,$findText){
    global 
$i,$count,$errors;
    
$i 0;
    
$count 0;
    
$errors 0;
    if (
$count == 0){
        
$color "#e2e2e2";
        
$count 1;
    }else{
        
$color "#ffffff";
        
$count 0;
    }
       if (
checkDomain($domain,$server,$findText)){
       
$i++;
       
$errors++;
          echo 
'<tr bgcolor="'.$color.'"><td bgcolor="white"><input type="checkbox" name="d'.$i.'" /><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:green;">פנוי</td></tr>';
       }else{
       echo 
'<tr bgcolor="'.$color.'"><td bgcolor="white"></td><td><div style="direction:ltr;">'.$domain.'</div></td><td style="color:red;">תפוס</td></tr>';
   }
  } 

*אינו מקבל את הצבע.


כל הזמנים הם GMT +2. הזמן כעת הוא 20:50.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ