Eingabe in PHP

Buba235

Erfahrenes Mitglied
Hallo Leute!


Ich habe in meinem Formular eine Anbindung zu einer DB und ich gebe die gesamte Tabelle dann auf der Seite aus. Jetzt möchte ich z.B. ein paar Dateien editieren und eine neue Zahl eintragen - nur es klappt nicht so wie ich mir das wünsche. Hier mal mein Code:

PHP:
<html>
    <head>
    <title>Datensätze</title>
    <body>

    <?php

        $id = $_GET['id'];

        //Verbindung zu DB
        mysql_connect("2.9.153.49", "root", "root") or die ("Server nicht gefunden");
        mysql_select_db("wlan") or die ("Datenbank nicht gefunden");

        //SQL-Befehl mit Fehlerabfrage
        $query = ("SELECT * FROM versuch");
        $result = mysql_query($query);

        $db = mysql_fetch_assoc($result);

        if (!$result) {
            echo "Fehler in der SQL-Syntax!";
        }

        $num = mysql_num_rows($result);

        //Datensätze ausgeben
        echo "$num Datensätze";

        $all[][] = array(array("", "", "", "", "", "", "", "", ""));

        //Datensätze ermitteln
        $i = 0;
        if ($num > 0) {
            while ($row = mysql_fetch_row($result)) {
                $all[$i][0] = $row[0];
                $all[$i][1] = $row[1];
                $all[$i][2] = $row[2];
                $all[$i][3] = $row[3];
                $all[$i][4] = $row[4];
                $all[$i][5] = $row[5];
                $all[$i][6] = $row[6];
                $all[$i][7] = $row[7];
                $all[$i][8] = $row[8];
                $i++;
            }
        }

        //Tabelle erstellen
        echo "<form name=\"datensaetze.php\" action=\"insert.php\" method=\"post\">";
        echo "<table boarder>";
        echo "<tr>\n
            <td bgcolor=\"#f0f0f0\">
                <b>ID </b>
            </td>

            <td bgcolor=\"#f0f0f0\">
                <b>SRC_NAS </b>
            </td>

            <td bgcolor=\"#f0f0f0\">
                <b>DST_REALM </b>
            </td>

            <td bgcolor=\"#f0f0f0\">
                <b>SRC_IP </b>
            </td>

            <td bgcolor=\"#f0f0f0\">
                <b>DST_IP </b>
            </td>

            <td bgcolor=\"#f0f0f0\">
                <b>DST_MCC </b>
            </td>

            <td bgcolor=\"#f0f0f0\">
                <b>DST_MNC </b>
            </td>

            <td bgcolor=\"#f0f0f0\">
                <b>TIMESTAMP </b>
            </td>

            <td bgcolor=\"#f0f0f0\">
                <b>DIRECTION </b>
            </td>

        </tr>\n";

        for ($i = 0; $i < count($all); $i++) {
             echo "<tr>\n
            <td bgcolor=\"#f0f0f0\">
                " . $i . "
            </td>\n

            <td bgcolor=\"#f0f0f0\">
                " . $all[$i][1] . "
            </td>\n

            <td bgcolor=\"#f0f0f0\">
                " . $all[$i][2] . "
            </td>\n

            <td align=\"right\" bgcolor=\"#f0f0f0\">
                " . $all[$i][3] . "
            </td>\n

            <td align=\"right\" bgcolor=\"#f0f0f0\">
                " . $all[$i][4] . "
            </td>\n

            <td align=\"right\" bgcolor=\"#f0f0f0\">
                " . $all[$i][5] . "
            </td>\n

            <td align=\"right\" bgcolor=\"#f0f0f0\">
                " . $all[$i][6] . "
            </td>\n

            <td align=\"right\" bgcolor=\"#f0f0f0\">
                " . $all[$i][7] . "
            </td>\n

            <td align=\"right\" bgcolor=\"#f0f0f0\">
                " . $all[$i][8] . "
            </td>\n


            <td align=\"right\" bgcolor=\"#f0f0f0\">
                <input name=\"DST_MNC\" size=\"1\" maxlength=\"2\" value=\"$db[DST_MNC]\">
            </td>\n

            </tr>\n";
        }

        echo"<td align=\"center\" >
            <input type=\"reset\" name=\"reset\" value=\"zurücksetzen\">
            </td>
            <td align=\"center\" >
            <input type=\"hidden\" name=\"id\" value=\"<?php echo $_GET[id] ?>\">
            <input type=\"submit\" name=\"anlegen\" value=\"Datensatz anlegen\">
            </td>
            </tr>\n";

        echo "</table>";
        echo "</form>";
    ?>

    </body>
</html>

Bei diesem Code wird nichts gemacht ausser die Datensätze anzuzeigen und eine Textbox anzuhängen. Da ist jetzt das Problem - ich will in die Textbox einen Wert schreiben und dieser soll dann in die DB übernommen werden. Das passiert aber nicht. Mit Hilfe dieses Codes werden die Daten in die DB eingetragen (das ganze ist MySQL):

PHP:
<html>
   <head>
      <title>Daten eintragen</title>
   </head>

</head>

<body>

<?php

    //Verbindung mit Datenbank herstellen
    $conid = mysql_connect("2.9.153.49", "root", "root") or die ("Datenbankserver nicht gefunden");

    //Datenbank auswählen
    mysql_select_db("wlan") or die ("Datenbank nicht gefunden");

    //Posten
    $DST_MNC         = $_POST['DST_MNC'];
    $id              = $_POST['id'];
    
    $sql = "UPDATE versuch SET DST_MNC = '$DST_MNC'";
    
    $insert = mysql_query($sql);




    //Fehlerabfrage mit Weiterleitung
    if (!$insert) {
		echo "Änderungen <b><U>nicht</U></b> erfolgreich!";
		echo "<meta http-equiv = 'refresh' content = '2; URL = datensaetze.php'>";
		exit();
    } else {
        //Weiterleitung falls Eintrag erfolgreich
        echo "<br>Änderungen erfolgreich!<br> Einen Moment, Sie werden weitergeleitet</br>";
        echo "<meta http-equiv = 'refresh' content = '2; URL = datensaetze.php'>";
    }
?>

</body>
</html>

Was genau mache ich denn falsch? Kann mir jemand helfen?


Gruß
Buba
 
Das Problem dürfte darin liegen, daß der Name für dein Textfeld in deriner Tabelle X-Mal vorhanden ist. Das geht so natürlich nicht. Du kannst aber, monolog zu PHP, den Namen als Array verwenden.
Z.B. Beispiel :
<input name=\"DST_MNC[]\" size=\"1\" maxlength=\"2\" value=\"$db[DST_MNC]\">

Wenn du mit PHP_INFO() mal schaust, was dann übergeben wird ...... ein Array.
Am besten machst Du dann noch ein hidden textfeld mit der ID ( sofern der datensatz eine hat ) und übergibst diese, damit du später weißt, welcher datensatz zu ändern ist.
Diese gehst Du dann durch und updatest einfach die Datensätze.

z.B.
<input name=\"DST_MNC[]\" size=\"1\" maxlength=\"2\" value=\"$db[DST_MNC]\">
<input name=\"ID[]\" type=\"hidden\" value=\"$db[ID]\">


//EDIT

Oder mache alternativ kein Textfeld sondern einen Hyperlink, der eine Input box aufpopt und dann das update script aufruft. Ist sicherlich nicht ganz so elegant, geht aber auch.
 
Hallo!


Also ich hab das jetzt mal so abgeändert wie du es mir geschrieben hast, aber es gibt keinerlei Änderungen in der DB. So ist jetzt mein aktueller Code:

PHP:
<html> 
    <head> 
    <title>Datensätze</title> 
    <body> 

    <?php 

        $id = $_GET['id']; 

        //Verbindung zu DB 
        mysql_connect("2.9.153.49", "root", "root") or die ("Server nicht gefunden"); 
        mysql_select_db("wlan") or die ("Datenbank nicht gefunden"); 

        //SQL-Befehl mit Fehlerabfrage 
        $query = ("SELECT * FROM versuch"); 
        $result = mysql_query($query); 

        $db = mysql_fetch_assoc($result); 

        if (!$result) { 
            echo "Fehler in der SQL-Syntax!"; 
        } 

        $num = mysql_num_rows($result); 

        //Datensätze ausgeben 
        echo "$num Datensätze"; 

        $all[][] = array(array("", "", "", "", "", "", "", "", "")); 

        //Datensätze ermitteln 
        $i = 0; 
        if ($num > 0) { 
            while ($row = mysql_fetch_row($result)) { 
                $all[$i][0] = $row[0]; 
                $all[$i][1] = $row[1]; 
                $all[$i][2] = $row[2]; 
                $all[$i][3] = $row[3]; 
                $all[$i][4] = $row[4]; 
                $all[$i][5] = $row[5]; 
                $all[$i][6] = $row[6]; 
                $all[$i][7] = $row[7]; 
                $all[$i][8] = $row[8]; 
                $i++; 
            } 
        } 

        //Tabelle erstellen 
        echo "<form name=\"datensaetze.php\" action=\"insert.php\" method=\"post\">"; 
        echo "<table boarder>"; 
        echo "<tr>\n 
            <td bgcolor=\"#f0f0f0\"> 
                <b>ID </b> 
            </td> 

            <td bgcolor=\"#f0f0f0\"> 
                <b>SRC_NAS </b> 
            </td> 

            <td bgcolor=\"#f0f0f0\"> 
                <b>DST_REALM </b> 
            </td> 

            <td bgcolor=\"#f0f0f0\"> 
                <b>SRC_IP </b> 
            </td> 

            <td bgcolor=\"#f0f0f0\"> 
                <b>DST_IP </b> 
            </td> 

            <td bgcolor=\"#f0f0f0\"> 
                <b>DST_MCC </b> 
            </td> 

            <td bgcolor=\"#f0f0f0\"> 
                <b>DST_MNC </b> 
            </td> 

            <td bgcolor=\"#f0f0f0\"> 
                <b>TIMESTAMP </b> 
            </td> 

            <td bgcolor=\"#f0f0f0\"> 
                <b>DIRECTION </b> 
            </td> 

        </tr>\n"; 

        for ($i = 0; $i < count($all); $i++) { 
             echo "<tr>\n 
            <td bgcolor=\"#f0f0f0\"> 
                " . $i . " 
            </td>\n 

            <td bgcolor=\"#f0f0f0\"> 
                " . $all[$i][1] . " 
            </td>\n 

            <td bgcolor=\"#f0f0f0\"> 
                " . $all[$i][2] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][3] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][4] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][5] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][6] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][7] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][8] . " 
            </td>\n 


            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                <input name=\"DST_MNC[]\" size=\"1\" maxlength=\"2\" value=\"$db[DST_MNC]\"> 
                <input name=\"id[]\" type=\"hidden\" value=\"$db[id]\">
            </td>\n 

            </tr>\n"; 
        } 

        echo"<td align=\"center\" > 
            <input type=\"reset\" name=\"reset\" value=\"zurücksetzen\"> 
            </td> 
            <td align=\"center\" > 
            <input type=\"hidden\" name=\"id\" value=\"<?php echo $_GET[id] ?>\"> 
            <input type=\"submit\" name=\"anlegen\" value=\"Datensatz anlegen\"> 
            </td> 
            </tr>\n"; 

        echo "</table>"; 
        echo "</form>"; 
    ?> 

    </body> 
</html>

Und das ist der Code um die Daten einzutragen:

PHP:
<html> 
   <head> 
      <title>Daten eintragen</title> 
   </head> 

</head> 

<body> 

<?php 

    //Verbindung mit Datenbank herstellen 
    $conid = mysql_connect("2.9.153.49", "root", "root") or die ("Datenbankserver nicht gefunden"); 

    //Datenbank auswählen 
    mysql_select_db("wlan") or die ("Datenbank nicht gefunden"); 

    //Posten 
    $DST_MNC         = $_POST['DST_MNC']; 
    $id              = $_POST['id']; 
     
    $sql = "UPDATE versuch SET DST_MNC = '$DST_MNC WHERE ID = '$id' '"; 
     
    $insert = mysql_query($sql); 




    //Fehlerabfrage mit Weiterleitung 
    if (!$insert) { 
        echo "Änderungen <b><U>nicht</U></b> erfolgreich!"; 
        echo "<meta http-equiv = 'refresh' content = '2; URL = datensaetze.php'>"; 
        exit(); 
    } else { 
        //Weiterleitung falls Eintrag erfolgreich 
        echo "<br>Änderungen erfolgreich!<br> Einen Moment, Sie werden weitergeleitet</br>"; 
        echo "<meta http-equiv = 'refresh' content = '2; URL = datensaetze.php'>"; 
    } 
?> 

</body> 
</html>


Was stimmt nicht? Wo liegt mein Denkfehler?
 
Du hast da einen kleinen Syntax-Denkfehler drin ;)

PHP:
<?php
echo "... 
<input type=\"hidden\" name=\"id\" value=\"<?php echo $_GET[id] ?>\"> 
...";
?>
Du kannst innerhalb von Hochkommas keine PHP-Start-Tags setzen und darin PHP-Code ausführen. Dann wird der PHP-Code einfach an den Browser weitergegeben, ohne durch PHP zu laufen, es wird einfach nur als Text interpretiert. Außerdem ist der PHP-Modus ja schon offen.
Du kannst allerdings vorher den PHP-Modus verlassen, sodass alles einfach ausgegeben wird, und dazwischen kurz wieder die PHP-Tags aufmachen und deinen Code reinschreiben. etwa so:
PHP:
<?php
// php code
$foo = "bar"; //....
?>
Dieser Text hier wird einfach ausgegeben, hier kommt der wert von foo: <?php echo $foo ?> Und jetzt geht der PHP-Code wieder weiter
<?php
// php code weiter..
?>

(Siehe auch in der PHP-Doku hier)

So hast du keine ID, die übergeben wird, und es passiert GARNIX weil du einen Datenbank-Syntaxfehler gemeldet bekommst, den du allerdings nicht abfängst (und so überhaupt nicht weißt was los ist). Probier mal beim Eintragen sowas anzuhängen wie
PHP:
echo mysql_error();

stebbi
 
Hallo!


Also ich hab den Code so geändert:

PHP:
<html> 
    <head> 
    <title>Datensätze</title> 
    <body> 

    <?php 

        $id = $_GET['id']; 

        //Verbindung zu DB 
        mysql_connect("2.9.153.49", "root", "root") or die ("Server nicht gefunden"); 
        mysql_select_db("wlan") or die ("Datenbank nicht gefunden"); 

        //SQL-Befehl mit Fehlerabfrage 
        $query = ("SELECT * FROM versuch"); 
        $result = mysql_query($query); 

        $db = mysql_fetch_assoc($result); 

        if (!$result) { 
            echo "Fehler in der SQL-Syntax!"; 
        } 

        $num = mysql_num_rows($result); 

        //Datensätze ausgeben 
        echo "$num Datensätze"; 

        $all[][] = array(array("", "", "", "", "", "", "", "", "")); 

        //Datensätze ermitteln 
        $i = 0; 
        if ($num > 0) { 
            while ($row = mysql_fetch_row($result)) { 
                $all[$i][0] = $row[0]; 
                $all[$i][1] = $row[1]; 
                $all[$i][2] = $row[2]; 
                $all[$i][3] = $row[3]; 
                $all[$i][4] = $row[4]; 
                $all[$i][5] = $row[5]; 
                $all[$i][6] = $row[6]; 
                $all[$i][7] = $row[7]; 
                $all[$i][8] = $row[8]; 
                $i++; 
            } 
        } 

?>
        <form name="datensaetze.php" action="insert.php" method="post">"
        <table boarder>"
        <tr>
            <td bgcolor="#f0f0f0"> 
                <b>ID </b> 
            </td> 

            <td bgcolor="#f0f0f0"> 
                <b>SRC_NAS </b> 
            </td> 

            <td bgcolor="#f0f0f0"> 
                <b>DST_REALM </b> 
            </td> 

            <td bgcolor="#f0f0f0"> 
                <b>SRC_IP </b> 
            </td> 

            <td bgcolor="#f0f0f0"> 
                <b>DST_IP </b> 
            </td> 

            <td bgcolor="#f0f0f0"> 
                <b>DST_MCC </b> 
            </td> 

            <td bgcolor="#f0f0f0"> 
                <b>DST_MNC </b> 
            </td> 

            <td bgcolor="#f0f0f0"> 
                <b>TIMESTAMP </b> 
            </td> 

            <td bgcolor="#f0f0f0"> 
                <b>DIRECTION </b> 
            </td> 

        </tr>

<?php
        for ($i = 0; $i < count($all); $i++) { 
             echo "<tr>\n 
            <td bgcolor=\"#f0f0f0\"> 
                " . $i . " 
            </td>\n 

            <td bgcolor=\"#f0f0f0\"> 
                " . $all[$i][1] . " 
            </td>\n 

            <td bgcolor=\"#f0f0f0\"> 
                " . $all[$i][2] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][3] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][4] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][5] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][6] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][7] . " 
            </td>\n 

            <td align=\"right\" bgcolor=\"#f0f0f0\"> 
                " . $all[$i][8] . " 
            </td>\n 


            <td align=\"right\" bgcolor=\"#f0f0f0\">";
?>
                <input name="DST_MNC[]" size="1" maxlength="2" value="$db[DST_MNC]"> 
                <input name="id[]" type="hidden" value="$db[id]">
            </td>

            </tr> 
<?php } ?>

        <td align="center" > 
            <input type="reset" name="reset" value="zurücksetzen"> 
            </td> 
            <td align="center" > 
            <input type="submit" name="anlegen" value="Datensatz anlegen"> 
            </td> 
            </tr>\n

        </table>
        </form>

    </body> 
</html>

Die andere Datei bleibt gleich! Also nun ist folgendes passiert: Alle Daten werden korrekt angezeigt und auch die Eingabefelder sind leer (auch wenn Daten in der DB stehen), und es werden keine Daten eingetragen! Wo zur Hölle hab ich da meinen Fehler?
mysql_error() sagt mir dann, dass dieser SQL-String so nicht geht - klar, weil keine Daten übermittelt werden. Aber wie übermittle ich denn die Daten? Das ist die große Frage.

Danke schon mal für euere Hilfe!
 
Zuletzt bearbeitet:
Und auch hier hat sirsmoke wieder recht ! Schau dir mal deinen Code an :

PHP:
            <td align=\"right\" bgcolor=\"#f0f0f0\">"; 
?> 
                <input name="DST_MNC[]" size="1" maxlength="2" value="$db[DST_MNC]">  
                <input name="id[]" type="hidden" value="$db[id]"> 
            </td> 

            </tr>  
<?php } ?>

Warum machst du das PHP Tag zu und versuchst mit $db[DST_MNC] in HTML den Wert zu schreiben. Das geht so natürlich nicht. Richtig wäre hier dann wohl:

PHP:
<td align=\"right\" bgcolor=\"#f0f0f0\"> 
                <input name=\"DST_MNC[]\" size=\"1\" maxlength=\"2\" value=\"" . $db[DST_MNC] . "\">  
                <input name=\"id[]\" type=\"hidden\" value=\"".$db[id] . "\"> 
            </td> 
            </tr> ";

Und damit das klappt, mußt du $db[id] natürlich auch mit werten gefüllt haben !
Außerdem muß das script zum ändern der Datenbank natürlich die Arrays auslesen.

Am ehesten habe ich das immer verstanden, wenn ich in das script ( in deinem Fall insert.php ) temporär mit den Befehlen

phpinfo();
die();

beginne und mir ganz unten anschaue, was übergeben wurde.
 
Genau, so ähnlich würde ich das auch machen

Allerdings geht das Raussuchen der Post-Daten viel schneller mit
PHP:
<?php echo "<pre>". print_r($_POST,true)."</pre>";
, da wird dann nur das $_POST - Array ausgelesen und man braucht nicht so viel rumsuchen ;)
ansonsten, immer versuchen einen SQL-Error abzufangen mit
PHP:
<?php
if(mysql_errno() != 0) //...
oder ähnlich

Hoffe jetzt klappts ;)
 
Hallo!


Erst einmal danke für euere Tipps. Alles klappt soweit, nur das Übergeben der ID nicht! Okay das liegt natürlich daran, dass ich es nicht befüllt habe, aber ehrlich gesagt weiß ich auch nicht wie genau das gehen soll. Ich hab schon so ziemlich alles ausprobiert was mir eingefallen ist und was ich für logisch hielt - aber es klappt nicht! Wie genau kann ich denn das Array der ID befüllen? Also diesen Teil:

PHP:
<td align="right\" bgcolor=\"#f0f0f0\"> 
                <input name=\"DST_MNC[]\" size=\"1\" maxlength=\"2\" value=\"" . $db[DST_MNC] . "\">  
                <input name=\"id[]\" type=\"hidden\" value=\"".$db[id] . "\"> 
            </td> 
            </tr> ";

Für euere Hilfe bin ich dankbar!
 
Also ;)

PHP:
<?php
$id = $_GET['id'];
warum das? Vorher wars richtig, das muss $_POST heißen und nicht $_GET. Du sendest die Daten ja per POST und nicht mit der URL (also GET)

Der Rest:
PHP:
<?php
        //SQL-Befehl mit Fehlerabfrage 
        $query = ("SELECT * FROM versuch"); 
        $result = mysql_query($query); 
        
        // *** (1) *****
        $db = mysql_fetch_assoc($result); 

        if (!$result) { 
            echo "Fehler in der SQL-Syntax!"; 
        } 

        $num = mysql_num_rows($result);  

/* ..... */

        //Datensätze ermitteln 
        $i = 0; 
        if ($num > 0) { 
            while ($row = mysql_fetch_row($result)) {

Was tust du bei (1)? Du holst mit dem mysql_get_assoc nur den ersten Datensatz, weil du die Funktion durch keine Schleife laufen lässt (Wie später mysql_fetch_row). Wieso machst du das? So kannst du immer nur den ersten Datensatz editieren. Und stattdessen könntest du genausogut $all[0][0] statt $ds['id'] schreiben. Ist also unnötig und kostet nur Performance.

Würde das ganze ganz anders organisieren.
Den Richtigen Ansatz hattest du ja eigentlich schon.
Du kannst jede Tabellenzeile (mit jedem Datensatz aus der Datenbank) mit einem Link hintendran versehen, der auf die selbe Datei linkt (die Anzeige der Tabelle mit dem Textfeld untendran) und die id hinten ahängst. Dadurch weiß das Script, dass es genau DIESEN Datensatz zur Änderung anzeigen soll.
Dann kannst du das ganze unten ausgeben, indem du als VORLAGE den Wert $all[$_GET['id']['DSC_MNC'] nimmst, und in die hidden-Felder eben diese $_GET['id'] noch mitgeben lässt, damit das Update-Script auch weiß welchen Datensatz es updaten soll.
Damit dürftest dus gut hinbekommen, hasts ja bis hierher auch geschafft.

Nochwas, welchen Zweck hat das?
PHP:
                "<input name=\"DST_MNC[]\" size=\"1\" maxlength=\"2\" value=\"" . $db[DST_MNC] . "\">  
                <input name=\"id[]\" type=\"hidden\" value=\"".$db[id] . "\"> 
            </td> 
            </tr> ";
Warum schreibst du [] hinter die Feldnamen? Klar dass nichts ankommt, $_POST[id'] ist nämlich dann ein array mit einem Element, das macht das []. (Du könntest es ansprechen mit $_POST['id'][1], wäre aber Schwachsinn). Also lass das mal weg und du krigst eine normale Zeichenkette geliefert.

Andere Sache:
Es ist nicht so günstig, wenn du Arrays so direkt in Hochkommatas packst. Hier passts jetzt, aber kleine Begrüngung warum das gut so ist, oben wars nämlich noch nicht so ;)
PHP:
<? //Statt
"blablabla $array[key] blabla"
// Lieber sowas wie 
"blablabla {$array['key']} blabla"
// oder gleich
"blablabla". $array['key'] ."blabla"
Dabei den Array-key bitte in Hochkommas (oder normalen Anführungszeichen "" ), also 'key'. Ohne Hochkommas sucht PHP zuerst nach einer Konstante die so heißt. Hier klappts noch, aber wenn man sichs sauber angewöhnt kann man sich später lange Fehlersuchen sparen, weil sowas eben nicht immer klappt.

stebbi
 
Zuletzt bearbeitet:
Zurück