Schachbrett mit html und php

  • Themenstarter Themenstarter Machatzke
  • Beginndatum Beginndatum
M

Machatzke

Hi an alle!

Ich muss mithilfe von php und html ein schachbrett ersellen, ansich kein problem, ich habe einfach mit html eine tabelle eingefügt und diese eingefärbt...

Jetzt sollen wir aber diese mit möglichst wenig zeilen in ein phpscript verpacken, also so um die 20 zeilen.
vielleicht könnt ihr ja helfen, ich sitze hier schon wieder seit über 4 stunden an google und finde nichts brauchbares...

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Schachbrett - Das 8x8 Feld</title>
</head>
<body>
<table width=500px height=500px cellspacing=0>

<tr bgcolor=#CCFFCC>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
</tr>

<tr bgcolor=#CCFFCC>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
</tr>

<tr bgcolor=#CCFFCC>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
</tr>

<tr bgcolor=#CCFFCC>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
</tr>

<tr bgcolor=#CCFFCC>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
</tr>

<tr bgcolor=#CCFFCC>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
</tr>

<tr bgcolor=#CCFFCC>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
</tr>

<tr bgcolor=#CCFFCC>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
<td bgcolor=white></td>
<td bgcolor=black></td>
</tr>

</table>
</body>
</html>
 
Eigentlich garnicht so schwer.
Nicht schön aber praktikabel
PHP:
<?php
for($i=0;$i<8;$i++){
	echo '<tr>';
		for($ii=0;$ii<8;$ii++){
			echo '<td style="background-color:';
			if($i%2 == 0){
			echo ($ii % 2 == 0) ? '#fff;' : '#000;';
			}else{
			echo ($ii % 2 == 0) ? '#000;' : '#fff;';
			}
			echo '">&nbsp;</td>';
		}
	echo '</tr>';
}
?>
 
Wo hier gerade der Modulo-Operator und gerade Zahlen angesprochen wird, hätte ich auch eine Frage:
0%2=0 ==> 0 ist gerade. Stimmt das rein mathematisch?
 
Also deins hat bei mir leider nicht funktioniert, aberr ich habe es jetzt anders gelöst, also es geht, danke für die hilfe!
 
Nach der Mathematik ist 0 weder gerade noch ungerade, sozusagen eine "neutrale" Zahl.
Übrigens, würde ich den unteren Codeschnipsel einfach in eine Funtkion packen:

PHP:
function erstelleReihe(Boolean: schwarz){
  $farbe = 1;
  if (!schwarz) {
    //weiß kommt in der Reihe zuerst
    $farbe  = 0;
  }
  echo '<tr>'; 
  for($ii=0;$ii<8;$ii++){
    echo '<td style="background-color:';
    if($farbe=0){
      echo "'white'";
      $farbe = 1;
    }else{
      echo "'black'";
      $farbe = 0;
    }
      echo '">&nbsp;</td>';
    }
}

Keine Garantie, das das vollständig syntaktisch korrekt ist.
Jedenfalls kannst du die Funktion einfach aufrufen, mittels dem Boolean angeben mit welcher Farbe die Reihe anfängt und so das Brett aufbauen.
 
Also deins hat bei mir leider nicht funktioniert, aberr ich habe es jetzt anders gelöst, also es geht, danke für die hilfe!

Dann hast du, um es kurz zu machen, irgendwo mist gebaut. Funktioniert ohne Probleme. ;)

0%2=0 ==> 0 ist gerade. Stimmt das rein mathematisch?
Ja.
Jedenfalls wenn man, trotz diverser Diskussionen ob 0 neutral ist oder nicht, wikipedia glauben schenkt.
Eine natürliche oder ganze Zahl heißt gerade, wenn sie durch Zwei teilbar ist, ansonsten ungerade. Dementsprechend wird die Null als gerade angesehen.
 
Zurück