Eine Funktion wird am falschen Ort ausgeführt

I

IKEAFREAX

Erstmal, Sorry für den dummen Betreff, doch mir ist nichts besseres eingefallen.
Ich hab jetzt mal mein Hauptproblem aus meinen Skripten in ein einziges, kleines, abgespecktes Skript kopiert.

!Fehlererklärung unten!

PHP:
<?

////
//Eine stark abgespeckte Version
////

function createtable($CT_BREITE,$CT_ALIGN,$CT_VALIGN,$CT_CONTENT)
{
?>
  <table border="0" cellpadding="0" cellspacing="0" width="<? echo $CT_BREITE; ?>">
    <tr>
      <td width="15">&nbsp;</td>
      <td align="<? echo $CT_ALIGN; ?>" valign="<? echo $CT_VALIGN; ?>"><? echo $CT_CONTENT; ?></td>
      <td width="15">&nbsp;</td>
    </tr>
    </table>
<?
};

function form($FORMPAGEID,$FORMINHALT)
{
?>
<FORM ACTION="index.php?pageid=<? echo $FORMPAGEID; ?>" METHOD="POST">
<? echo $FORMINHALT; ?>
</FORM>
<?
};

$INHALT = '

        <FONT SIZE="1">Was auch immer</FONT><BR>
        <INPUT TYPE="TEXT" NAME="Was auch immer" VALUE="' . $Wasauchimmer . '">
';

$CONTENT = form("trallala",$INHALT);
createtable("400","left","middle",$CONTENT);


?>

Der HTML Code soll nachher so aussehen =>

Code:
<TABELLE>
    <FORUMLAR>
        INHALT
    </FORMULAR>
</TABELLE>

Dummerweise sieht es aber nachher so aus =>

Code:
<FORMULAR>
INHALT
</FORMULAR>
<TABELLE>
</TABELLE>

Jetzt stellt sich für mich die goldene Frage,
was ist am Code falsch, dass er es nicht so ausgibt,
wie ich es eigentlich will?
 
-

Hi Ikea!
PHP:
$CONTENT = form("trallala",$INHALT);
Du rufst hier deine Funktion form() mit den jeweiligen Parametern auf und erwartest, dass die Funktion deinen HTML Code vervollständigt und dann zurückgibt, und in $CONTENT speichert. In deiner Funktion form() gibst du allerdings nichts per return zurück, sondern gibst dort gleich den Code per echo aus.
Also müsstest du deine Funktion umschreiben und den Code da zwischenspeichern.
 
Gut, denkfehler von mir ;)
Caminus, wie kann ich dir nur danken?

klasse; big thanks!
 
Zurück