1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Variablen werden nicht ausgelesen

Dieses Thema im Forum "Allgemeines" wurde erstellt von HelpMe_wp, 9. Dezember 2020.

  1. HelpMe_wp

    HelpMe_wp Well-Known Member

    Registriert seit:
    7. Dezember 2018
    Beiträge:
    186
    Zustimmungen:
    0
    Ich habe eine WordPress Seite erstellt.
    Darin habe ich im obersten Abschnitt die Einteilung "Code" genommen und folgenden Code platziert.
    Dieser wird aber nicht angezeigt auf der Homepage

    Ziel ist es, wenn jemand ein Link auf einer anderen Homepage Seite den Link anklickt "domain/herkunft/?ort=Berlin" dann dies auf der Seite Herkunft auch so anzeigt. Sprich ich werde danach eine Abfrage machen, welche nur Einträge dieser Herkunft Anzeigt. Aber nur schon das auslesen der Variablen geht zur Zeit nicht.

    Code:
    ---
    <?php
    if (isset($_GET["ort]))
    {
    $ort = $_GET["ort"];
    }
    else
    {
    $ort = 'Welt';
    }
    echo $ort;
    ?>
    ---
     
  2. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Da hinter "ort" fehlt das Anführungszeichen.

    Gruß
    Ingo
     
  3. HelpMe_wp

    HelpMe_wp Well-Known Member

    Registriert seit:
    7. Dezember 2018
    Beiträge:
    186
    Zustimmungen:
    0
    Hab nun das Anführungszeichen noch ergänzt, aber auch jetzt gehts noch nicht.
     
  4. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Moment mal, Du hast den PHP-Code einfach als Inhalt in eine Beitrag geschrieben oder wo genau steht der Code drin?
    Womit genau wurde die Website erstellt? Kann man das irgendwo live sehen?

    Gruß
    Ingo
     
  5. HelpMe_wp

    HelpMe_wp Well-Known Member

    Registriert seit:
    7. Dezember 2018
    Beiträge:
    186
    Zustimmungen:
    0
    Ich habe diesen Code in meine WordPress Seite platziert. Im WordPress kann man verschiedene InhaltsTypen wählen. Ich habe CODE genommen und es dort reinkopiert.
    Die Seite ist noch nicht öffentlich zugänglich.

    Der Code sieht so aus.
    ---
    <?php
    if (isset($_GET["ort"]))
    {
    $ort = $_GET["ort"];
    }
    else
    {
    $ort = 'Welt';
    }
    ?>
    <table>
    <tr>
    <td>Firma</td>
    <td>Öffnungszeiten</td>
    <td>Bereich</td>
    </tr>
    <?php
    $dbmt = DN Zugriff
    $sql01 = "SELECT *FROM Tabelle where (ort ='$ort')";
    foreach ($dbmt->query($sql01) as $row01)
    {
    echo '<tr>';
    echo '<td>'.$row01['firma'].'</a></td>';
    echo '<td>'.$row01['zeit'].'</td>';
    echo '<td>'.$row01['bereich'].'</td>';
    echo '</tr>';
    }
    ?>
    </table>
    ---
     
  6. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Ich habe es vermutlich immer noch nicht ganz verstanden. Meinst Du das hier:

    wp-code-block.png
    Damit kann man die Eingabe als "Code" formatiert anzeigen, der Code wird aber nicht ausgeführt.

    Gruß
    Ingo
     
  7. HelpMe_wp

    HelpMe_wp Well-Known Member

    Registriert seit:
    7. Dezember 2018
    Beiträge:
    186
    Zustimmungen:
    0
    Ja genau dieses habe ich genommen.
    Wie kann ich dann mein Code in eine WordPress Seite integrieren, dass er auch funktioniert.
     
  8. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Der aus meiner Sicht richtige Weg wäre dafür ein Plugin, das einen Shortcode implementiert.
    Durch das Einfügen das Shortcodes auf einer Seite könnte dann z.B. die Tabelle an der Stelle ausgegeben werden.

    Es gibt zwar auch Plugins wie Exec-PHP, aber davon würde ich abraten.

    Gruß
    Ingo
     
  9. HelpMe_wp

    HelpMe_wp Well-Known Member

    Registriert seit:
    7. Dezember 2018
    Beiträge:
    186
    Zustimmungen:
    0
    Ich möchte eben Werte aus einer Datenbank anzeigen auf der Homepage und je nach dem welchen Link angeklickt hatte die Tabelle filtert und nur dies von der Ortschaft anzeigt.
    Darum dies mit der Variablen
     
  10. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Das habe ich soweit verstanden, nur kann man nicht einfach PHP-Code in den Inhalt einer Seite oder eines Artikels einfügen, so das dieser ausgeführt wird. Warum das so ist und mögliche Alternativen kann man hier nachlesen.

    Zudem sollte man (Benutzer)Eingabewert nie ungeprüft an Datenbankabfragen übergeben.

    Oder anders gesagt, mit ein paar Zeilen PHP ist so etwas nicht zu stemmen.

    Gruß
    Ingo
     
  11. HelpMe_wp

    HelpMe_wp Well-Known Member

    Registriert seit:
    7. Dezember 2018
    Beiträge:
    186
    Zustimmungen:
    0
    Es geht nicht um Werte zu speichern, sondern über den Link gezielte Infos aus der DB auslesen
    Wie kann ich mit WordPress eine Variable so an eine PHP Datei übergeben
    Hab Befehl gefunden um eine nicht WP Datei zu include.
     
  12. r23

    r23 Well-Known Member

    Registriert seit:
    9. Dezember 2006
    Beiträge:
    7.317
    Zustimmungen:
    582
    Damit hast du leider eine Sicherheitslücke in deinem WordPress
    https://www.php.net/manual/de/security.database.sql-injection.php

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    verwende etwas in dieser Richtung
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    in WordPress kannst du dir auch mal query_vars ansehen
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!

    So etwas macht man nicht .. auch nicht bei einem Beispiel.

    Hier aus dem PHP Handbuch
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  13. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.634
    Zustimmungen:
    1.778
  14. HelpMe_wp

    HelpMe_wp Well-Known Member

    Registriert seit:
    7. Dezember 2018
    Beiträge:
    186
    Zustimmungen:
    0
    Was muss ich genau für ein Code/Einstellung machen, dass wenn jemand auf den Link " domain/herkunft/?ort=Berlin " klickt, dass bei der Seite "herkunft" den Inhalt der Tabelle herkunft filtert nach der Spalte "Ort".
    Bei der WordPress Seite "herkunft" habe ich den Befehl " [show_file file="domain/herkunftfilter.php"] " geschrieben.
    Rufe ich nun den Link auf " domain/herkunft/?ort=Berlin " wird mir nichts angezeigt.
    Rufe ich den Link " domain/herkunftfilter.php?ort=Berlin " auf, wird die Tabelle korrekt gefiltert.
     
  15. r23

    r23 Well-Known Member

    Registriert seit:
    9. Dezember 2006
    Beiträge:
    7.317
    Zustimmungen:
    582
    hier mal ein Beispiel.

    https://wordpress.org/plugins/display-url-params/

    dann kannst du
    [show_file file="domain/herkunftfilter.php"]
    durch

    [URLParam param='paramname']

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Es gibt Anleitungen, wie man Shortcode Plugins schreibst. Wenn du dies nicht selber lernen möchstest, such dir über das Job Forum einen Dienstleister... erwarte aber nicht, dass wir aus den Bruchstücken hier, dir helfen können oder wollen
     
  16. HelpMe_wp

    HelpMe_wp Well-Known Member

    Registriert seit:
    7. Dezember 2018
    Beiträge:
    186
    Zustimmungen:
    0
    Das heisst ich muss eine Funktion schreiben, wo dies macht
     
  17. HelpMe_wp

    HelpMe_wp Well-Known Member

    Registriert seit:
    7. Dezember 2018
    Beiträge:
    186
    Zustimmungen:
    0
    Wie weiss die Funktion dann, an welche Include oder Iframe Seite er den Parameter übergeben soll?
     
  18. HelpMe_wp

    HelpMe_wp Well-Known Member

    Registriert seit:
    7. Dezember 2018
    Beiträge:
    186
    Zustimmungen:
    0
    Ich habe mir nun 2 Funktionen geschrieben.
    Jede Einzel funktionieren gut.

    jetzt wollte ich die kombinieren. Als Ergebnis wird angezeigt "]

    So sieht die Codezeile in Wordpres Seite aus: [show_file file="domain/datei.php?variabel=[variablemein]"]

    Mit den beiden Funktionen zusammen sollte es den Inhalt dieses Links anzeigen: domain/herkunft/?ort=Berlin
     
  19. Shadow

    Shadow Well-Known Member

    Registriert seit:
    12. Februar 2007
    Beiträge:
    2.969
    Zustimmungen:
    57
  20. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.634
    Zustimmungen:
    1.778
    Es sollte ausreichen, den Code von Beitrag #5 in einen eigenen Shortcode zu schreiben und das HTML statt per echo direkt auszugeben per return zurückzugeben, mit noch entspr. Vorkehrungen bzgl. der genannten SQL-Injection, dann kann man sich diese sonstige ganze Konstruktion über externe Dateien u.ä. sparen.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden