Conditie if pt creare Div cu CSS class diferit

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
tycyssg
Mesaje:58

Conditie if pt creare Div cu CSS class diferit

Salut Marplo

Cod: Selectaţi tot

<?php
$sql = "SELECT DISTINCT phonemodel FROM iphone ORDER BY phonemodel DESC LIMIT 4";
$rows = $conn->sqlExec($sql);

$nr_row = $conn->num_rows;
if($nr_row>=0) {
  foreach($rows as $row) {
  if($nr_row % 2 == 0 ){
    echo '<div class="linksmen" ><a href="iphone.php?phonemodel='.$row['phonemodel'].'"><img src="images/mark.png">&ensp;'.$row['phonemodel'].'</a></div>';
	 }
	 else {
	 echo '<div class="linksmen_s" ><a href="iphone.php?phonemodel='.$row['phonemodel'].'"><img src="images/mark.png">&ensp;'.$row['phonemodel'].'</a></div>';
	 }
  } 
}
?>
As avea nevoie sa stiu cu ce as putea inlocui in acest if

Cod: Selectaţi tot

 if($nr_row % 2 == 0 )
ca in momentul selectului sa-mi afiseze div-ul ales de mine. Practic clasa din css difera.

Multumesc !

MarPlo Mesaje:4343
Salut
Nu inteleg ce inseamna "ca in momentul selectului sa-mi afiseze div-ul ales de mine" (cand si prin ce sa alegi div-ul?), dar daca acel cod e functional si vrei doar o alta varianta, ai putea inlocui ce ai la "if() ... else" cu acest cod.

Cod: Selectaţi tot

if($nr_row>=0) {
  $div_cls = (($nr_row % 2) == 0) ? 'linksmen' : 'linksmen_s';
  foreach($rows as $row) {
      echo '<div class="'. $div_cls .'" ><a href="iphone.php?phonemodel='.$row['phonemodel'].'"><img src="images/mark.png">&ensp;'.$row['phonemodel'].'</a></div>';
  }
}

tycyssg Mesaje:58
Normal codul era sa arate un Nr par si unul impar (culoare 1 si culoare 2) dar am aflat ca $nr_rows nu returneaza un numar si conditia nu era buna.

Postez codul mai jos pt eventualele persoane care or sa aibe nevoie.

Cod: Selectaţi tot

<?php
$sql = "SELECT DISTINCT phonemodel FROM iphone ORDER BY phonemodel DESC LIMIT 4";
$rows = $conn->sqlExec($sql);

$nr_row = $conn->num_rows;
$i = 0;
  foreach($rows as $row) {
    $i++;    // $i se incrementeaza de fiecare data cand foreach se apeleaza.
    $div_cls = (($i % 2) == 0) ? 'linksmen_s' : 'linksmen';  //clasele din css cu stiluri diferite
  
    echo '<div class="'.$div_cls.'" title="'.$row['phonemodel'].'"><a href="iphone.php?phonemodel='.$row['phonemodel'].'"><img src="images/mark.png" alt="" />&nbsp;'.$row['phonemodel'].'</a></div>';
}
  ?>
Sau cica se putea face si cu css :" nth-child(an+b) " unde n sunt numerele de la 0 la n .
Mai multe exemple aici: w3schools.com/cssref/sel_nth-child.asp

Subiecte similare