Ankündigung

Einklappen
Keine Ankündigung bisher.

iframe wird nach formular submit geleehrt

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • iframe wird nach formular submit geleehrt

    Hallo Leute ich hoffe Ihr könnt mir helfen.

    Ich habe ein Formular über welches ich Daten an ein neues PHP Skript übergebe.
    Das ganze sieht so aus:

    PHP-Code:
    <html>
    <head>
        <title>Frontend</title>

    </head>
    <iframe style="width: 30%; height: 30%; margin-left: 35%; margin-right: 35%; background-color: #ffffff" name="transFrame" id="transFrame"></iframe>

    <?php



    mysql_connect
    ("XXXXXXX""XXXXXX" "XXXXXX") OR DIE ("Unable to connect to database! Please try again later.");
    mysql_select_db("XXXXXXX");

    $sql="SELECT name FROM GCMRegister";
    $result=mysql_query($sql);

    //$options="";

    while ($row=mysql_fetch_array($result)) {

        
    $name=$row["name"];
        
    $options.="<OPTION VALUE=\"$name\">".$name.'</option>';
    }
    ?>

    <body style="background-color: #00BFFF;">
        <form name="send" method="post" action="send.php" class="c-1" target="transFrame" >

    <input type="button" name="allbutton" id="allbutton" style="width: 20%; margin-left: 40%; margin-right: 40%; margin-top: 0.5%;" value="Alle Benutzer auswählen" onclick="listbox_selectall('select[]', true);"/>
    <SELECT name="select[]" id="select[]" style="width: 20%; height: 30%; margin-left: 40%; margin-right: 40%; margin-top: 1%; margin-bottom: 1%;" multiple ><OPTION disabled hidden VALUE=0><?=$options?></SELECT>


            <br />
            <textarea id="txt1" name="content" cols="50" rows="10" style="width: 80%; height: 20%; margin-left: 10%; margin-right: 10%; text-align: center; " placeholder="Bitte geben Sie hier die Nachricht ein welche Sie an die Endger&auml;te &uuml;bermitteln wollen..."; ></textarea>
               <br />
        <br />
            <input name="submitnow" type="button" value="Senden" style="position: absolute; width: 20%; margin-left: 40%; margin-right: 40%; height: 5%"; onclick="stc()" />





        </form>
    </body>
    </html>



    <script type="text/javascript">

    function listbox_selectall(listID, isSelect) {
            var listbox = document.getElementById(listID);
            for(var count=0; count < listbox.options.length; count++) {
                listbox.options[count].selected = isSelect;
        }
    }

    function stc() {
    document.send.submit();
    document.send.txt1.value="";
    }


    </script>

    nach der Formular Übermittlung werden auf dem neuen Skript (send.php) Daten via echo ausgegeben und im iframe angezeigt.

    Sobald ich etwas neues Eingebein mein Formular und erneut übermittel wird der Iframe mit den neuen Daten gefüllt und die alten werden überschrieben.

    Weiß jemand wie ich die neuen Daten (echo) einfach an den iframe anschließen kann?

    Vielen Dank!


  • #2
    Wie sieht denn die send.php aus?

    Btw: iFrames sind Tot.
    Zitat von nikosch
    Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

    Kommentar


    • #3
      Morgen,

      das ist die send.php:

      PHP-Code:
      <?php

      $con 
      mysql_connect(XXXXXXXX", "XXXXXX","XXXXXX");
      if(!
      $con){
      die('MySQL connection failed');
      }
       
         
      $db = mysql_select_db("XXXXXX");
         if(!
      $db){
          die('Database selection failed');
         }

       if(isset(
      $_POST['select'])){
          echo '"'.$_POST['
      content'].'" gesendet, Empfänger: ';            
      foreach (
      $_POST['select'] as $selectedOption){
          echo 
      $selectedOption.',';

      $registatoin_ids = array();
         
      $sql = "SELECT registrationid FROM GCMRegister WHERE name='$selectedOption'";
         
      $result = mysql_query($sql$con);
         while(
      $row = mysql_fetch_assoc($result)){
          array_push(
      $registatoin_ids$row['registrationid']);
         }
       
         // Set POST variables
               
      $url = 'https://android.googleapis.com/gcm/send';
         
          
      $message = array("Notice" => $_POST['content']);
               
      $fields = array(
                   'registration_ids' => 
      $registatoin_ids,
                   'data' => 
      $message,
               );
         
               
      $headers = array(
                   'Authorization: key=AIzaSyBAgZu13XXXXXXXXXXXEK3Sx8ZShiSxmgE',
                   'Content-Type: application/json'
               );
               // Open connection
               
      $ch = curl_init();
         
               // Set the url, number of POST vars, POST data
               curl_setopt(
      $ch, CURLOPT_URL, $url);
         
               curl_setopt(
      $ch, CURLOPT_POST, true);
               curl_setopt(
      $ch, CURLOPT_HTTPHEADER, $headers);
               curl_setopt(
      $ch, CURLOPT_RETURNTRANSFER, true);
         
               // Disabling SSL Certificate support temporarly
               curl_setopt(
      $ch, CURLOPT_SSL_VERIFYPEER, false);
         
               curl_setopt(
      $ch, CURLOPT_POSTFIELDS, json_encode($fields));
         
               // Execute post
               
      $result = curl_exec($ch);
               if (
      $result === FALSE) {
                   die('Curl failed: ' . curl_error(
      $ch));
               }
         
               // Close connection
               curl_close(
      $ch);
          
      }

      }
              
       
       
         
               
        
      ?>

      nach der Übermittlung der form an die send.php wird das Ergebnis aus der send.php (also die echos) im iframe auf der form.php ausgegeben aber nach jeder Übermittlung überschrieben.

      Ideen?

      Kommentar


      • #4
        aber nach jeder Übermittlung überschrieben
        Ja, das ist normales Verhalten. Was du nicht speicherst, geht beim nächsten Request eben wieder verloren...
        Grundlagen des HTTP Protokolls => Zustandslos!
        Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

        Kommentar


        • #5
          Und wie Speicher ich saß ganze für die nächste Verwendung?

          Kommentar


          • #6
            Session, Datenbank, Datei, Memcache (z.B.)
            Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

            Kommentar


            • #7
              Ich sende quasi über meine Form die Daten an meine send.php
              Die Daten werden via echo im iFrame ausgegeben.
              Wie bekomme ich die Daten aus dem Iframe in eine Liste oder ähnliches welche dann nach einer erneuten Übermittlung der Form und nach aktualisierung des iFrames immernoch angezeigt wird?

              Kommentar


              • #8
                Zitat von lstegelitz Beitrag anzeigen
                Session, Datenbank, Datei, Memcache (z.B.)
                Schon versucht?
                Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
                PHP.de Wissenssammlung | Kein Support per PN

                Kommentar


                • #9
                  Vergiss mysql_* ließ dir mal PHP-Dokumentation zu mysqli_* oder PDO durch, das sind die besseren und noch länger unterstützen Befehle für Datenbankzugriffe
                  - Laravel

                  Kommentar

                  Lädt...
                  X