fastix®: Neuanfang

Beitrag lesen

Moin!

if ($zahl > 0)

{echo "hallo $ha";};
das Semikolon beendet die komplette (meines Wissens) if-Geschichte, sodass das else nimmer greift

Das tut es nicht.

if (1==2)
{
  # if Zweig, der aus mehreren Anweisungen besteht:
  echo "Eins ist gleich Zwei<br>";
  echo "(1==2)<br>";
}
else
{
  # else Zweig, der aus mehreren Anweisungen besteht:
  echo "Eins ist nicht gleich Zwei<br>";
  echo "(1!=2)<br>";
}

danke, dass war das problem

Nein, daran kann es nicht gelegen haben.

$ha = hart; sollte zumindest zu einer Warnung führen, wenn es die Konstante hart nicht gibt. Übernommen wird dann tatsächlich der Name der inexistenten Konstante als String.

Wenn nicht, dann solltest Du in der PHP die Warnungen einschalten:

error_reporting  =  E_ALL

Mit dieser für ein Programmier- oder Lernsystem brauchbaren Einstellung bekommts Du eine Fehlermeldung wie:

Notice: Use of undefined constant hart - assumed 'hart' in test.php on line 12

Auf "Produktionssystemen" sind diese Warnungen aus womöglich guten Gründen oft abgeschaltet: Der Benutzer soll nicht bemerken, dass der Programmierer nichts taugt.

Warum taugt er nichts? Ein string wurde nicht als string übergeben. Wenn jetzt irgendjemand 100 Zeilen über Deinem $ha = hart;

ein:  define ('hart', 'weich');

einfügt, dann suchst Du tagelang, warum da "weich" ausgegeben wird.

Hier also was zum spielen:

<?php
define ('hart', 'weich');
$ha=hart;
echo $ha;
?>

MFFG (Mit freundlich- friedfertigem Grinsen)

fastix®

--
Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development