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

DB Daten in neuer leeren Seite ausgeben

Dieses Thema im Forum "Design" wurde erstellt von verrueckterEr, 7. Februar 2018.

  1. verrueckterEr

    verrueckterEr Member

    Registriert seit:
    1. Dezember 2017
    Beiträge:
    5
    Zustimmungen:
    0
    Hallo zusammen!

    Hoffe, ich bin mit meiner Frage in der richtigen Rubrik.

    Ich erstelle mir gerade in WP ein auf mich zugeschnittenes Zeiterfassungssystem (Auftrag, Rufbereitschaftseinsätze, Urlaub, Fahrtkosten etc.). KLappt auch alles soweit ganz gut.
    Nun hänge ich an einer Stelle fest.
    Ich habe in einem Form Daten eingegeben, diese werden in einer Datenbank gespeichert. Auch alles ok und funktioniert.
    Jetzt habe ich ein zweites Form, in dem ich einen Zeitraum "Von" und "Bis" angeben kann (zwei Datepicker) und mit klick auf den Submit-Button soll sich eine neue leere Seite im neuen Tab öffnen, wo nur die angeforderten Daten ausgegeben werden - also ohne WP-Design. Sinn und Zweck ist es die Daten dann fürs FA ausdrucken zu können - ohne Grafiken etc.

    Wenn ich in der Form action eine PHP-Datei angebe, zeigt er mir immer an, dass diese nicht gefunden wurde, obwohl im Template-Ordner vorhanden. Evt. blockiert WP diese Aktion?

    Wenn ich es im Content anzeigen lasse, wird der Scrollbalken der Seite ziemlich lang und alles erscheint doch sehr unübersichtlich. Daher die Anforderung, es in einer neuen leeren Seite anzeigen zu lassen.

    Wäre schön, wenn mir da jemand helfen könnte.

    Gruss
    Steph
     
  2. verrueckterEr

    verrueckterEr Member

    Registriert seit:
    1. Dezember 2017
    Beiträge:
    5
    Zustimmungen:
    0
    So, jetzt habe ich es zumindest schon mal geschafft, dass die in der Form action angegebene PHP-Datei (beispiel.php) in einem neuem Tab geladen wird, wenn ich den Submit-Button im Form klicke. Problem ist jetzt, dass keine Daten aus der Datenbank angezeigt werden. Der Code zum Datenbankzugriff mittels $wpdb steht in der beispiel.php.

    Hat jemand eine Lösung?
     
  3. danielgoehr

    danielgoehr Well-Known Member

    Registriert seit:
    13. Juli 2016
    Beiträge:
    2.674
    Zustimmungen:
    128
    Kannst du mal den Inhalt der beispiel.php hier posten? Ich nehme an, du lädst dann einfach die wp-load.php per include? Oder wie sorgst du dafür, dass wpdb in deiner PHP Datei verfügbar ist?

    Werden in der error.log irgendwelche Fehler ausgegeben?
     
  4. verrueckterEr

    verrueckterEr Member

    Registriert seit:
    1. Dezember 2017
    Beiträge:
    5
    Zustimmungen:
    0
    Hallo!
    Danke für die schnelle Antwort.

    <?php
    global $wpdb;
    $wpdb->show_errors();


    $start = $_POST["start"];
    $ende = $_POST["ende"];


    echo $start;
    echo $ende;


    $xxx = $wpdb->get_results("SELECT * FROM arz ");
    foreach($xxx as $aw)
    {
    echo $aw->AB01;
    echo " | ".$aw->AC03;
    echo " | EZ: ".$aw->AC01." - ".$aw->AC02;
    echo " | SAP: ".$aw->AD03;
    echo " | AZ: ".$aw->AD01." - ".$aw->AD02;
    echo " | KM: ".$aw->AC04;
    echo "<br>";
    echo $aw->AD04;
    echo ": ".$aw->AD05;


    echo "<br></br>";
    }
    ?>


    Ich dachte, es würde auch über die globale $wpdb funktionieren. Wahrscheinlich habe ich da was außer acht gelassen?
     
  5. verrueckterEr

    verrueckterEr Member

    Registriert seit:
    1. Dezember 2017
    Beiträge:
    5
    Zustimmungen:
    0
    Wunderbar. Da hat mich jemand zum Denken in eine andere Richtung gebracht.

    Vielen Dank dafür

    Folgende Lösung hat mich zum Ziel geführt.

    $parse_uri = explode( 'wp-content', $_SERVER['SCRIPT_FILENAME'] );
    require_once( $parse_uri[0] . 'wp-load.php' );
     
  6. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.660
    Zustimmungen:
    1.783
    Wenn das die ganze Datei ist, dann fehlt das Starten von WordPress (wie schon von @danielgoehr in Frageform angemerkt), daher existiert $wpdb nicht. Je nach Lage Deiner beispiel.php den Pfad in require(...) noch anpassen, so dass er auf den richtigen Ordner (Hauptordner von WordPress) mit der genannten Datei zeigt.

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  7. danielgoehr

    danielgoehr Well-Known Member

    Registriert seit:
    13. Juli 2016
    Beiträge:
    2.674
    Zustimmungen:
    128
    Genau. Darauf wollte ich hinaus. Wenn auch zugegebenermaßen etwas um die Ecke formuliert :)

    Theoretisch sollte ein include von wp-load.php reichen.

    Siehe dazu:
    https://frankiejarrett.com/2012/04/the-simplest-way-to-require-include-wp-load-php/

    Wobei die Hinweise von @b3317133 zum Pfad da aber natürlich genauso gelten.
     
  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