Ergebnis 1 bis 2 von 2
  1. #1
    Streethawk68 ist offline Jungspund
    registriert
    10-08-2012
    Ort
    Regierungsbezirk Köln
    Beiträge
    16

    Smile Entsprechender Befehl für reload (statt "Frames" <div>)

    Liebe Mituser!

    Heute wende ich mich als Neuling in diesem Forum mit folgender Fragestellung an euch:

    Es geht um eine eigene Chat-Anwendung, rein mit HTML, PHP und etwas Javascript, ohne MySQL. Das Lehrbuch-Original arbeitet mit Frames. Dies habe ich abgestellt ("Frames sind out") und stattdessen <div>s genommen. Nun kann ich mich aber nicht mehr auf den Frame zum Reload berufen mit:

    /* Chat-Anzeige aktualisieren */
    function reload()
    {
    parent.ausgabe.location.href = "chat_text_aus.php";
    }

    sondern brauche einen Javascriptbefehl, der den <div> anspricht.

    <div id="ausgabebereich">

    Eingabe und Ausgabe sind in einer HTML-Datei "chat_text_gesamt01.php"

    Hier der Gesamtcode:

    <html>
    <head>
    <!-- aus Forum, um Aktualisierungsproblem zu lösen (refresh)
    <meta http-equiv="refresh" content="5"; URL="http://www.seite.de/">
    untauglich -->

    <link rel="stylesheet" type="text/css" href="chat.css">

    <script type="text/javascript">
    /* Beitrag senden, falls Name und Beitrag vorhanden */
    function send()
    {
    if(document.f.nick.value != "" &&
    document.f.beitrag.value !="")
    document.f.submit();
    }

    /* Chat-Anzeige aktualisieren */
    function reload()
    {
    // parent.ausgabe.location.href = "chat_text_gesamt01.php";
    '#eingabebereich'.location.href = "chat_text_gesamt01.php";
    }
    </script>
    </head>

    <body>

    <div id="eingabebereich">
    <?php
    /* Anhängen des neuen Textes, falls vorhanden */
    if(isset($_POST["beitrag"]))
    {
    $fp = @fopen("chat_text.txt", "a");
    if($fp)
    {
    $jetzt = date("d.m.y H:i:s");
    $tabzeile = "<tr><td>$jetzt</td><td>"
    . $_POST["nick"] . "</td><td>"
    . $_POST["beitrag"] . "</td></tr>"
    . chr(13) . chr(10);
    fputs($fp, $tabzeile);
    }
    fclose($fp);

    /* Chat-Anzeige aktualisieren */
    echo "<script type='text/javascript'>
    reload();</script>";
    }
    ?>

    <form name="f" action="chat_text_gesamt01.php" method="post">
    <table>
    <tr>
    <td>Ihr Name:</td>
    <td><input name="nick"
    <?php
    if(isset($_POST["nick"]))


    echo "value='" . $_POST["nick"] . "'";

    ?>
    size="20" /></td>
    <td align="center">
    <a href="javascript:reload();">Chat laden</a>
    </td>
    <td align="right">
    <a href="javascript:send();">Senden</a>
    </td>
    </tr>

    <tr>
    <td valign="top">Ihr Beitrag:</td>
    <td colspan="3">
    <textarea cols="50" rows="2" name="beitrag"></textarea>
    </td>
    </tr>
    </table>
    </form>
    </div>

    <div id="ausgabebereich">

    <h3>Chat</h3>

    <?php
    /* Datei mit Chat-Daten auslesen */
    $fp = @fopen("chat_text.txt","r");
    if($fp)
    {
    echo "<table>"
    . "<tr><td><b>Zeit</b></td>"
    . "<td><b>Name</b></td>"
    . "<td><b>Beitrag</b></td></tr>";

    /* alle Zeilen lesen und ausgeben */
    while(!feof($fp))
    {
    $tabzeile = fgets($fp, 200);
    echo "$tabzeile";
    }

    echo "</table>";
    fclose($fp);
    }
    ?>

    </div>

    </body>
    </html>

    Habe es jetzt mit

    window.location.href = "chat_text_gesamt01.php";

    halb gelöst, jetzt aber lädt er die ganze Seite neu und man muss immer seinen Nick neu eingeben. Vielleicht gehe ich doch nur DB-Version (mit MySQL) über.


    Für Hilfe wäre ich sehr dankbar!

    euer
    Streethawk68
    Geändert von Streethawk68 (10-08-2012 um 23:23 Uhr) Grund: Zwischenlösung gefunden

  2. #2
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Entsprechender Befehl für reload (statt "Frames" <div>)

    Frames sind für sowas eigentlich eine gute Lösung, ansonsten kannst du auch mit AJAX arbeiten.

Ähnliche Themen

  1. httpRequest statt action "kontaktformular"
    Von Bexsta im Forum JavaScript
    Antworten: 20
    Letzter Beitrag: 09-01-2010, 19:56
  2. Antworten: 7
    Letzter Beitrag: 04-06-2008, 09:08
  3. Antworten: 0
    Letzter Beitrag: 07-12-2006, 20:55
  4. Antworten: 3
    Letzter Beitrag: 19-11-2003, 14:43

Stichworte

Lesezeichen

Berechtigungen

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