Zurück   WordPress Deutschland Forum > Support > Konfiguration

Antwort
 
Themen-Optionen Ansicht
Alt 23.06.2009, 17:37   #1 (permalink)
PostRank: 5
 
Registriert seit: 05.04.2009
Beiträge: 398
div-Klasse, die php-Datei inkludiert, automatisch neu laden

Hallo liebe JavaScript-Experten unter euch,

ich hätte da so ein Problem, das mich die letzten Wochen beschäftigt hat, und das lautet folgendermaßen:

Mein Blog besitzt seit einiger Zeit ein input-Feld, in das die User 100 Zeichen schreiben können. Wir haben es clagg-Feld genannt.
Der eingegebene Satz wird ganz einfach in einer txt-Datei gespeichert, die immer die letzte Zeile ausgibt. Jeder Besucher kann rumschreiben wie er möchte, was bedeutet, dass man jedesmal die komplette Seite refreshen muss, um zu sehen, ob sich was geändert hat.

Deshalb dachte ich mir: Bastele ein bisschen herum, damit sich die div-Klasse mit dem clagg-Feld automatisch nach 30s oder so neu lädt.
Leider habe ich von JavaScript und Ajax ziemlich wenig Ahnung, aber einige Versuche mit Codebeispielen aus diversen Foren haben schon fast das Ziel erreicht.

Gestern hätte ich es dann fast geschafft. In die header.php kam das entsprechende script, das über getElementById nach 30s das clagg-div (in dem mit php include eine externe php-Datei eingebunden wird) ebendasselbe div mit ebenderselben php-Datei erneut füllen soll.

Allerdings bekam ich nach 30s immer eine Fehlermeldung, weil die php-Datei nach dem refresh über JavaScript offenbar nicht mehr vom Server ausgeführt wurde.

Habt ihr das bis hierher einigermaßen verstanden? Ich weiß, das ist alles sehr kompliziert

Meine Fragen sind nun:
  • Wird die externe php-Datei nach dem Refresh wirklich nicht mehr vom Server ausgeführt und sorgt dann für den Error?
  • Kann man das Problem lösen?
  • Gibt es andere Möglichkeiten, zu bewirken, dass sich die div-Klasse mit der externen php-Datei nach 30s refresht?
Schon mal im Voraus vielen Dank
__________________
floffimedia.de
floffimedia ist offline   Mit Zitat antworten
Alt 23.06.2009, 17:46   #2 (permalink)
PostRank: 10
 
Benutzerbild von Morris
 
Registriert seit: 27.05.2006
Ort: Nähe Münster
Beiträge: 1.559
Da Wordpress jQuery mitbringt, könntest du der Einfachheit halber ganz simpel auf die Ajaxfunktionalität von eben diesem zurückgreifen.

API/1.3/Ajax - jQuery JavaScript Library

Gruß
Mo
__________________
Der Provider meines Vertrauens: Manitu | Webhostlist | Hakuna Matata!
Morris ist offline   Mit Zitat antworten
Alt 23.06.2009, 17:58   #3 (permalink)
PostRank: 5
 
Registriert seit: 05.04.2009
Beiträge: 398
Vielen Dank, ich komme mir jetzt zwar vor wie der Vollnoob, aber: Welche Funktion brauche ich da? Wie muss man sowas in php einbauen, im Bezug auf die div?
__________________
floffimedia.de
floffimedia ist offline   Mit Zitat antworten
Alt 23.06.2009, 20:39   #4 (permalink)
PostRank: 5
 
Registriert seit: 05.04.2009
Beiträge: 398
Ich habe jetzt mal ziemlich viel gegoogelt und mir folgenden code zusammengeschrieben:

PHP-Code:
<?php wp_enqueue_script('jquery');?>
    <script type="text/javascript">
    jQuery(document).ready(function(){ 
        jQuery("a.refresh").click(function(){
        jQuery.get("/clagg/clagg-display.php");
        });  
    });        
    </script>

    <?php wp_head(); ?>
    </head>
    <body>
Weiter unten in der header.php wird dann die php-Datei inkludiert:

PHP-Code:
<?php include (TEMPLATEPATH '/clagg/clagg-display.php'); ?>
In ihr befindet sich folgender Link:

PHP-Code:
<a href="#" class="refresh">Auffrischen</a
Bestimmt sagt ihr jetzt: Das kann doch gar nicht funktionieren, weil...
Sagt mir bitte auch warum
__________________
floffimedia.de
floffimedia ist offline   Mit Zitat antworten
Alt 23.06.2009, 20:54   #5 (permalink)
WPD-Team
 
Benutzerbild von marX
 
Registriert seit: 05.10.2006
Beiträge: 12.943
Das kann doch gar nicht funktionieren, weil...
Code:
<script type="text/javascript">
    jQuery(document).ready(function(){ 
        jQuery("a.refresh").click(function(){
        jQuery.get("/clagg/clagg-display.php");
        });  
    });        
    </script>
Code:
<?php include (TEMPLATEPATH . '/clagg/clagg-display.php'); ?>
... die URLs nicht gleich sind.
__________________
FAQ // Codex // Plugins // marcus.zelend.de // "1984" war keine Anleitung!
marX ist offline   Mit Zitat antworten
Alt 23.06.2009, 21:02   #6 (permalink)
PostRank: 5
 
Registriert seit: 05.04.2009
Beiträge: 398
Verstehe ich nicht. In dem jQuery-Befehl kann ich doch keine php-Befehle anwenden, wenn ich den Pfad dann relativ angebe, bezieht er sich doch auch auf den Templatepfad, oder?
__________________
floffimedia.de
floffimedia ist offline   Mit Zitat antworten
Alt 23.06.2009, 21:21   #7 (permalink)
WPD-Team
 
Benutzerbild von marX
 
Registriert seit: 05.10.2006
Beiträge: 12.943
Wenn sich die PHP-Datei im Themeverzeichnis befindet, dann so:
PHP-Code:
jQuery.get("<?php bloginfo('template_url'?>/clagg/clagg-display.php");
__________________
FAQ // Codex // Plugins // marcus.zelend.de // "1984" war keine Anleitung!

Geändert von marX (23.06.2009 um 21:47 Uhr). Grund: Edit? Was fürn Edit? :o)
marX ist offline   Mit Zitat antworten
Alt 23.06.2009, 21:41   #8 (permalink)
PostRank: 10
 
Benutzerbild von Arno Simon
 
Registriert seit: 30.11.2005
Beiträge: 2.170
Zitat:
Zitat von marX Beitrag anzeigen
Wenn sich die PHP-Datei im Themeverzeichnis befindet, dann so:
PHP-Code:
jQuery.get(<?php bloginfo('template_url'?>"/clagg/clagg-display.php");
nicht doch eher so?!?

PHP-Code:
jQuery.get("<?php bloginfo('template_url'?>/clagg/clagg-display.php");
;O)
__________________
Feedback ist Wichtig!|FAQ|Rückfragen im Forum!|Wenn ich mal was vergesse.... einfach mal sagen...
Arno Simon ist offline   Mit Zitat antworten
Alt 23.06.2009, 21:47   #9 (permalink)
WPD-Team
 
Benutzerbild von marX
 
Registriert seit: 05.10.2006
Beiträge: 12.943
Mmmh....?
__________________
FAQ // Codex // Plugins // marcus.zelend.de // "1984" war keine Anleitung!
marX ist offline   Mit Zitat antworten
Alt 23.06.2009, 21:49   #10 (permalink)
PostRank: 10
 
Benutzerbild von Arno Simon
 
Registriert seit: 30.11.2005
Beiträge: 2.170
Zitat:
Zitat von marX Beitrag anzeigen
Mmmh....?
na, dann hau mal die 3 letzten posts in die tonne
__________________
Feedback ist Wichtig!|FAQ|Rückfragen im Forum!|Wenn ich mal was vergesse.... einfach mal sagen...
Arno Simon ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist aus.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus



Alle Zeitangaben in WEZ +1. Es ist jetzt 13:42 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.6.0 | Impressum | Ein Inpsyde.com Projekt