Weitere Informationen und den Download findest du auf der offiziellen Anlaufstelle de.wordpress.org
Ergebnis 1 bis 7 von 7
  1. #1
    PostRank: 0
    Registriert seit
    01.12.2017
    Beiträge
    5

    DB Daten in neuer leeren Seite ausgeben

    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. #2
    PostRank: 0
    Registriert seit
    01.12.2017
    Beiträge
    5
    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. #3
    PostRank: 10 Avatar von danielgoehr
    Registriert seit
    13.07.2016
    Ort
    Berlin
    Beiträge
    2.016
    Zitat Zitat von verrueckterEr Beitrag anzeigen
    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?
    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. #4
    PostRank: 0
    Registriert seit
    01.12.2017
    Beiträge
    5
    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. #5
    PostRank: 0
    Registriert seit
    01.12.2017
    Beiträge
    5
    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. #6
    PostRank: 10 Avatar von b3317133
    Registriert seit
    21.11.2014
    Beiträge
    2.580
    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:
    <?php
    
    define( 'WP_USE_THEMES', false );
    require( './wp-blog-header.php' );
    
    global $wpdb;
    $wpdb->show_errors();
    ...

  7. #7
    PostRank: 10 Avatar von danielgoehr
    Registriert seit
    13.07.2016
    Ort
    Berlin
    Beiträge
    2.016
    Zitat Zitat von b3317133 Beitrag anzeigen
    Wenn das die ganze Datei ist, dann fehlt das Starten von WordPress (wie schon von @danielgoehr in Frageform angemerkt)
    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/t...e-wp-load-php/

    Wobei die Hinweise von @b3317133 zum Pfad da aber natürlich genauso gelten.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •