Problem mit PHP

i-ben

New member
16 Mai 2008
3
0
Hi an alle,

und zwar habe ich mir gestern ein PHP-Lern-Buch gekauft, bin gerade im 2. Kapitel. Bisher klappte alles wunderbar und ich habe auch alles verstanden, aber nun komme ich nicht mehr weiter. Und zwar war ich gerade beim Thema "Logische Operatoren" als ich ein Script, welches im Buch vorgegeben war, abschrieb. Doch als ich es dann über einen virtuellen Server, den ich mir mithilfe von xampp erstellen konnte, aufrufen wollte, stürzte dieser dann ab und ich bekam die "Windows XP Problembericht"-Meldung. Das Script habe ich zu 100% identisch abgetippt (wieder und wieder) und immer stürzte der Server ab...

Ich habe es mal getestet und es muss wahrscheinlich an einer Verzweigung (xor) liegen.

Bitte um Hilfe (vielleicht ist irgendetwas falsch am Script)

Hier das Script ("Wahrheitswerttabelle):


<html>
<body>
<h1>Logische Operatoren</h1>
<table width="100%" border="1" cellspacing="5">
<tr>
<th>$A</th>
<th>$B</th>
<th>$A && $B</th>
<th>$A || $B</th>
<th>!$A</th>
<th>$A xor $B</th>
</tr>

<tr>
<td>TRUE</td>
<td>TRUE</td>
<td>
<?PHP (TRUE && TRUE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (TRUE || TRUE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (!TRUE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (TRUE xor TRUE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
</tr>

<tr>
<td>TRUE</td>
<td>FALSE</td>
<td>
<?PHP (TRUE && FALSE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (TRUE || FALSE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (!TRUE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (TRUE xor FALSE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
</tr>

<tr>
<td>FALSE</td>
<td>TRUE</td>
<td>
<?PHP (FALSE && TRUE ) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (FALSE || TRUE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (!FALSE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (FALSE xor TRUE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
</tr>

<tr>
<td>FALSE</td>
<td>FALSE</td>
<td>
<?PHP (FALSE && FALSE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (FALSE || FALSE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (!FALSE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
<td>
<?PHP (FALSE xor FALSE) ? $erg="TRUE" : $erg="FALSE";echo $erg ?>
</td>
</tr>
</table>
</body>
</html>
 
Benutz doch bitte die [PHP]...[/PHP] Tags hier im Forum.

Ansonsten kann ich nur sagen, dass das Script hier bei mir wunderbar läuft:
PHP, Apache, Mac OS X

Liegt vielleicht wirklich an xampp auf Windows. Du kannst ja mal zum Test die Zeilen, wo du das Problem vermutest, rausschmeißen.
 
Also ist das Script (so wie es dort steht) einwandfrei? Weil dann werde ich mir die Software für Mac herunterladen und es dort probieren.

Bitte um Antwort :)
 
PHP ist egal, ob das einleitende Tag groß- oder klein geschrieben wird. Daran liegt es schonmal nicht. Vielleicht löst ein Webserver auch das Problem aus.

Bei mir kommt z. B. durch das xampp-Controlpanel ein Bluescreen unter Vista. Vielleicht hat es ja was mit dem Server und nicht mit dem Script zu tun.

Edit:
Mein Apache stürzt bei dem Script auch ab. (Vista SP1)
 
da php eine relativ "nicht case sensitive" art hat, sollte es egal sein (und bei allen von mir bisher verwendeten php4+5 versionen war es das auch) ob die php-tags nun groß oder klein geschreiben werden, besonders da, wenn die option short_open_tag aktiviert ist, das php eh fast keine rolle mehr spielt, da <? ... ?> ausreicht.
das an dem script was falsch ist, muss gar nicht unbedingt sein, den in dem fall sollte nicht gleich eine windows fehlermeldung kommen, auf sowas kann php eigentlich selber ganz gut reagieren.

hast du die neuste xampp/php version?

EDIT: bei mir funzt das script so wie es sollte, xampp, neuste php version 5, win xp sp2
 
Hat sich geklärt... lag nur an Windoof :)

Bei Mac OS X läuft es 100% einwandfrei