Script mit ajax nachladen?

Thema wurde von Manni_HB, 3. Juli 2014 erstellt.

  1. Manni_HB
    Manni_HB G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    Ein Script, das bis zu 4sek mit sich zu tun hat, soll ich einer Tabelle nachgeladen werden.

    Habe dazu dies..
    Code:
        $.ajax({
            type: "GET",
            url: "includes/mbr_statistik/mbr_test.php",
            data: "nachladen",
            success: function(nachladen){   
                $('#nachladen').empty();
                $('<span>'+nachladen+'</span>').appendTo('#nachladen');
            }
        });
    
    im Headbereich eingebaut und an gewünschter Stelle die Ausgabe:
    Code:
    <div id="nachladen" style="text-align:center;">
        <img class="mbr_wait_pic" border="0" src="<?php echo MBrImagesDir; ?>mbr_icon_running.gif">
        <br />
        <div style="color:grey;"><small>Daten werden aufbereitet</small></div>    
    </div>
    
    Das bombastische Script "mbr_test.php" beinhaltet jetzt mal nur..
    Code:
    <?php
    $dummy = 'HALLO MANNI';
    echo $dummy;
    ?>
    
    Ok ... das "mbr_icon_running.gif" erscheint, dreht eine Runde und dann ... nix - nur weißer Bildschirm! :mad:

    Frage: Denk- oder Konstruktionsfehler? :confused:

    Für zielführende Hinweise bereits jetzt ein MagaDankeschön!
     
  2. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Versuche mal statt

    PHP:
    $('#nachladen').empty();             
    $(
    '<span>'+nachladen+'</span>').appendTo('#nachladen');
    PHP:
    $('#nachladen').html(nachladen); 
     
  3. Manni_HB
    Manni_HB G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    Kaum macht man die Pfadangabe in "Url" richtig, schon funktioniert es! :mad:

    Kleine Zusatzfrage:
    Das "mbr_test.php" soll Dutzende DB-Querys machen und ausgeben.
    1.) Dazu müssen ja wohl die ganzen "DIR_FS_INC-Funktionen geladen werden - oder?
    2.) Die Ausgabe muss "mbr_test.php" machen, denn zurück an das aufrufende Script kann ja (eigentlich) nix kommen?!
     
  4. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    1. Ja.

    2: Natürlich bekommt das Skript was zurück: den HTML-Code in "nachladen" in "success: function(nachladen){ ".

    Nur das Skript kann ja per AJAX nachgeladenen HTML-Code in die Seite einbauen.
     
  5. Manni_HB
    Manni_HB G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    EIn kleines "application_top"-Problem bekomme ich einfach nicht gelöst!

    Die Funktionalität wie in #1 beshrieben funktioniert tadellos.

    Nur die Frage 1.) aus #3 macht Sorgen.
    Das Includen des ganzen "DIR_FS_INC" Funktionen ist m.E unschön und was schlimmer ist, manches steht trotzdem nicht zu Verfügung - nur als Beispiel "$_SESSION['language']" und Konstante wie "MODULE_PAYMENT_INSTALLED"

    Habe nur versucht die "appication_top.php" zu includen.

    • Mit "require('../../includes/application_top.php');" wird sie gefunden & geladen - steig aber bei Zeile 70 ("require('includes/configure.php');") aus - logisch
    • chdir('../../');
      require('includes/application_top.php'); ... kommt zwar kein Fehler - nur die Kontrolle kommt nicht mehr zurück ans aufrufende Script.

    Wie könnte man diese Zwickmühle (sauber) lösen?
     
  6. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Erstens mal solltest Du die "application_top_export" includen, die dürfte ausreichen wenn es um DB-Zugriffe geht, und includiert nicht zu viel überflüssiges...

    Ein kleines

    PHP:
    chdir('../../');
    am Anfang von "mbr_test.php" sollte das Problem lösen.

    Damit setzt Du das aktuelle Ausführungsverzeichnis auf die Shop-Root,

    Dann kannst Du "include('includes/application_top...') verwenden.
     
  7. Manni_HB
    Manni_HB G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    Ja SakraDeiwi ... wo bringtste jetzt datt Gerät her? :)

    Ok ... sehr schön - wenn jetzt noch die "$_SESSION['language']" zur Vergüng stünde .. wäre ich (für heute) ruhig!
     
  8. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Versuche es mal damit in Deinem Programm nach der "application_top":

    PHP:
    session_name('XTCsid');
    if (
    STORE_SESSIONS != 'mysql'session_save_path(SESSION_WRITE_DIRECTORY);
    session_start();
     
  9. Manni_HB
    Manni_HB G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    Bingo!!

    PS:
    Da dir an einem "Geistig auf die Stirn geküsst" und an einem Gutschein für LuxusKartoffeln nix liegt, habe ich das "DankeProblem" anders (..,55€) gelöst! :)
     
  10. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Ach, für die leckere Linda kann ich mich schon erwärmen... :)
     
  11. Manni_HB
    Manni_HB G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    Kleine Nachfrage:
    Der AvengerTipp statt der "application_top" die abgespeckte Version "application_top_export" zu nehmen, wift die Frage auf: "Fehlt dann nix in Bezug auf Speed bei DB-Zugriffen?" Da wäre noch´n kleiner Nachbrenner hübsch. :)

    Es fehlt z.B "xtc_db_queryCached.inc.php" ... bringt datt Dingens was?
     
  12. Avenger
    Avenger G-WARD 2012/13/14/15
    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Dieser ganze Caching-Quatsch von xxCommerce stammt noch aus Zeiten, in denen die Rechner seeeehhhhrrrr lahm waren.....

    Wie man ja auch hier lesen kann, macht Caching in vielen Fällen mehr kaputt als dass es nutzt....