Sowas kann doch garnicht gehen

Wir sammeln alle Infos der Bonusepisode von Pokémon Karmesin und Purpur für euch!

Zu der Infoseite von „Die Mo-Mo-Manie“
  • Hay Leute, ich habe Luckystar geholfen beim Fehler ausbessern und jetzt habe ich eine Datei gesehen und mich gewundert wie das geht. Eine Variable kann doch kein Ö drinn haben. Aber die Datei geht wirklich ich habe es selbst getestet. Ich frage mich jetzt wie soll das gehen ? Mein Buch spricht dagegen das man keine Variablen mit einem Ö haben kann. Zum überzeugen der Code



    Ach und die Variable $löschen wird doch nirgends definiert!

  • Wie meinst du ein Bild oder etwas anderes einfügst ? Hier handelt es sich nicht um Bilder sondern um einen Code der etwas aus der Datenbank löscht und ich mir nicht erklären kann wie $löschen geht wenn sie nicht einmal definiert ist bzw. keinen Inhalt hat...

  • vlt. ist register_globals angestellt, damit werden z.B. $_GET Variablen aus der url sofort als eigenständige Variablen interpretiert:
    Vielleicht ist das auch für $_POSTs so.
    also beispiel:
    man rufe die seite

    Code
    http://www.example.com/?variable=7

    auf.
    Auf dieser Seite sei dann dieser code vorhanen.

    PHP
    <?php
    if ( isset ( $variable ) ) {
    	echo 'Die Variable ist: ' . $variable;
    } else {
    	echo 'Keine Variable definiert';
    }
    ?>


    Wenn register_globals ausgeschaltet ist, was in PHP mitlerweile Standart ist, dann steht da einfach nur "Keine Variable definiert", ist register_globals allerdings eingeschaltet, wird eine Variable $variable auf den Wert 7 gesetzt.
    /E:
    /dev/null, falls ich da Falsch liege, berichtige mich bitte ;D


  • Ne ist richtig :O
    Aber das wird mit allen GPC Variablen gemacht, GET POST COOKIE, also auch REQUEST (Zusammenfassung der 3)


    Warum das Ö geht weiß ich nicht, ich würde aber sowieso mit Englsichen Bezeichnern entwickeln, gehört sich halt so :P

  • Ich kann mir vorstellen, dass es mit solchen Variablen auf Englischen Servern probleme geben kann :o
    Es sieht aber so aus, als wäre register_globals an, denn sonst müsste man $_POST['löschen'] schreiben...


    Ja, muss an sein, ist aber im Moment nicht das Thema. Das sollte aber mit PHP keien Unterschiede machen ob Deutsch oder Englisch, die Doku ist ja das einzige was übersetzt ist und selbst da nicht alles.

  • Aber wie ist es jetzt eigentlich möglich ? In meinem Buch steht, dass dies einfach nicht geht und mich wundert es warum es dann bei Luckystar geht... Und er übermittelt ja nichts über GET und POST - ich habe mir das ganze ja schon angeschaut blos wie kann das sein. In <option> ist ja auch kein value="" drinn...

  • Was verstehst du nicht?


    In deutschen Servern gehen ja Umlaute in Variablen, was aber nicht zu empfehlen is.
    Und ich denk mal wenn $löschen nicht definiert ist , dann heißt das doch eigentlich

    PHP
    $löschen = "DELETE * FROM 'datenbank' WHERE id='".$löschen."'";
    //ist gleich
    $löschen = "DELETE * FROM 'datenbank' WHERE id ='' ";
  • Bei einem Select wird die Ausgewählte Option als Value übergeben.
    Soweit ich sehe, übermittelt er wohl etwas über $_POST, Das formular nämlich ...
    Da der Select 'l&ouml;schen' heißt, wird wahrscheinlich die Variable $löschen erzeugt.

  • Bei einem Select wird die Ausgewählte Option als Value übergeben.
    Soweit ich sehe, übermittelt er wohl etwas über $_POST, Das formular nämlich ...
    Da der Select 'l&ouml;schen' heißt, wird wahrscheinlich die Variable $löschen erzeugt.


    Genau so ist es. Aber wie gesagt, Umlaute wenn nciht ale Variablen Inhalt sind böse. Bei mir im Browsergame ist auch alles auf English entwickelt nur, die Variableninhalte können UTF-8 sein.