ilch Forum » Ilch Clan 1.1 » Allgemein » Pop Up Fenster bei bestimmter Abfrage

Geschlossen
  1. #1
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Hey,

    wer könnte mir bei folgendem Problem helfen:

    Habe eine PHP Datei die Werte aus einer MySQL Datei auswertet und anzeigt.

    Bei bestimmten Werten werden durch das Skript einzelne Zeilen farblich markiert.

    Aktuelle Abfrage als beispiel zu den farben sieht so aus:

    if ($row['zahl']== '12345') // Text in Tabelle wird grün
    {
    echo '<tr bgcolor=#00ff00>
    <td>'.$datum2[2].'.'.$datum2[1].'.'.$datum2[0].'</td>
    <td>'.$realtime.'</td>
    <td>'.$row['zahl'].'</td>
    <td>'.$text['text'].'</td>
    <td>'.$row['sub'].'</td>
    <td>'.$row['text2'].'</td>
    </tr>';



    Ich möchte nun das bei bestimmten Zahlen Werten ein kleines Pop Up Fenster aufpopt mit einem festen Text oder einer Html Vorlage etc.

    Vermute mal das es über Javaskript abläuft ?

    Wer könnte mir dabei helfen ?

    Vielen Dank für Tipps !

    Mfg Beatzler


    verwendete ilchClan Version: 1.1
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Vollkommen richtig, du gibst mit php also einfach den HTML Code für das Javascript aus, musst dann allerdings eine weitere Seite bereitstellen, wo das, was angezeigt wird gespeichert ist, andere Möglichkeit ist ein Container in der Seite zu benutzen, sowas wie beim PMPopup.
    Dafür kann man z.B. FloatBox verwenden, gibt da aber sicher noch viele andere Möglichkeiten.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Hey,

    vielen Dank !

    Ich habe nun nochmal ein wenig gegoogelt und das ganze erstmal folgendermaßen gelöst:

    {
    die ("<body onload='winopen()'>
    <script>
    function winopen(){
    window.open('externer Link
    'toolbar=no,status=no, menubar=no,scrollbars=yes,width=550,height=480')
    }
    </script>");


    Das klappt soweit auch wunderbar, Pop Up öffnet sich!

    Nur leider bleibt die restliche PHP Seite / Abfrage dann an der Stelle stehen.... Das sollte natürlich nicht passieren..

    Was kann ich nun tun damit der rest weiterläuft ?

    Vielen Dank für tipps !


    Mfg Beatzler
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Jan Hall Of Fame
    Registriert seit
    17.01.2007
    Beiträge
    3.646
    Beitragswertungen
    54 Beitragspunkte
    Du musst an die if-schleife noch ein else anhänegn.

    if ( zahl == 12345 ) {
      öffne popup
    } else {
      normal ausgeben
    }
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Hey,

    danke für den Hinweis aber das habe ich, es folgen direkt hinter der ersten IF Abfrage mehrere elseif abfragen. Diese sind bisher nur dafür da gewesen die entsprechende Zeile farblich zu machen und haben nicht mehr gemacht. ( wie im ersten Post zu sehen ) Statt if danach einfach mehrere elseIf aber natürlich dort mit anderen auswahlkriterien ( Zahlen oder text etc. )
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Jan Hall Of Fame
    Registriert seit
    17.01.2007
    Beiträge
    3.646
    Beitragswertungen
    54 Beitragspunkte
    Du verwendest die Funktionion "die".
    Schau mal hier: de3.php.net/die
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Mhh

    kennt ihr denn eine bessere Variante / aufruf ?

    Vielen Dank für Tipps !

    Mfg Beatzler
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    annemarie gelöschter User
    ich kapier gerade euren zusammenhang zwischen popup / if else / die() nicht o__O
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    ZitatZitat geschrieben von annemarie

    ich kapier gerade euren zusammenhang zwischen popup / if else / die() nicht o__O


    Hey,

    Also habe die Pop Up Variante mittels "die" in der IF Beding stehen... Wird diese erfüllt bricht das skript ab ( die ) und öffnet aber dann das Pop Up...

    Wie könnte man das ganze denn noch anferweitig ohne "die" lösen ?!

    Vielen Dank für Tipps !

    Mfg Beatzler
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Fire86 Mitglied
    Registriert seit
    25.04.2009
    Beiträge
    543
    Beitragswertungen
    0 Beitragspunkte
    die() ist absolut unpassend, so lädt das Script nicht zuende.
    Wie Mairu schon erwähnte, solltest du dich besser am PMPopup orientieren.
    Die Funktion findest du in der includes/func/forum.php, heisst check_for_pmpopup() oder so ähnlich.

    Wenn du mal die Forensuche nach "+abfrage +popup" bemühst, wirst du einen Thread finden, wo ich schonmal für eine andere Abfrage beschrieben habe, wie man ein Popup, ähnlich dem PMPopup, erstellen kann.
    Sollte keine große Hürde darstellen, das für deine Bedürfnisse anzupassen.
    Kein Support per Email oder ICQ!
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Hey,

    danke für deine Antwort! Habe den besagten Thread gefunden, werde daraus nur leider auch nicht schlauer traurig

    Ich versteh einfach nicht warum ich nicht einfach in die Bedingung das reinschreiben kann:
    (funktioniert natürlich nicht, darum die Frage)

    {
    <body onload='<script>
    function winopen(){
    window.open('meinlink.de','POP ',
    'toolbar=no,status=no, menubar=no,scrollbars=yes,width=400,height=260')
    }
    </script>'>;
    }

    sauer
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    Jan Hall Of Fame
    Registriert seit
    17.01.2007
    Beiträge
    3.646
    Beitragswertungen
    54 Beitragspunkte
    Schonmal mit echo probiert?
    Das sollte eigentlich prima funktionieren.
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Genau einfach statt die echo verwenden, dann sollte es gehen, keine Ahnung wo du das mit dem die gefunden hast, damit gibt man halt bevor man die Skriptausführung abbricht noch was aus.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Hey,

    ich habe nun :

    {
    echo "<body onload='winopen()'>
    <script>
    function winopen(){
    window.open('meinpopup','POPUP',
    'toolbar=no,status=no, menubar=no,scrollbars=yes,width=400,height=260')
    }
    </script>";
    }


    Das POPUP öffnet sich auch aber leider bleibt das restliche Skript wieder stehen warum bloß ??

    Vielen Dank nochmals für eure Hilfe!

    Mfg Beatzler
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    Jan Hall Of Fame
    Registriert seit
    17.01.2007
    Beiträge
    3.646
    Beitragswertungen
    54 Beitragspunkte
    Der Fehler liegt über, oder unter den von dir geposteten Zeilen.
    0 Mitglieder finden den Beitrag gut.
  16. #16
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Hey,

    okay Sorry Sorry wer lesen kann ist klar im Vorteil lachen

    Hatte mich irgendwie total auf den Fehler verzwickt.. Nun läuft soweit alles.

    Vielen Dank für eure Hilfe erstmal !

    MFG Beatzler
    0 Mitglieder finden den Beitrag gut.
  17. #17
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Hey,

    könntet ihr mir nochmal nen Tipp geben ?

    Da die Seite ja alle 5 Sek. prüft ob ein Popup geöffnet werden soll wird natürlich auch bei einem Treffer alle 5 sek das Popup neu geladen !

    Wie bekomme ich es nun hin dass wenn das Pop Up einmal geöffnet wurde es solange wie das Pop Up offen ist nicht noch einmal geladen wird?
    (Wenn es einfacher ist meinetwegen auch über eine bestimmte Zeit z.b. 5 min, wäre sogar noch besser )

    Habe nun gelesen das man dazu am besten nen Cookie setzt aber ich bekomm das net so recht hin ... Wie macht man sowas ?

    Vielen Dank für jeden Tipp !

    MFg Beatzler
    0 Mitglieder finden den Beitrag gut.
  18. #18
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Am besten dazu auch nochmal schreiben was du bisher genau hast, weil der letzte Code kann es ja wohl nicht sein, man muss dazu auch den Inhalt des Popups ändern, um das Cookie zu setzen/entfernen.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  19. #19
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Also das ganze sieht aktuell so auf ( Der Aufruf für das PopUp)

    if ((stristr($alias['alias'],"Wort"))==true)    
    	    {
    echo "<body onload='winopen()'>
    <script>
    function winopen(){
    window.open('http://meinopup.html','POP ',
    'scrollbars=no,location=yes,directories=no,status=no,menubar=no,toolbar=no,resizable=no,dependent=no,width=500,height=300')
    }
    </script>";
    echo '<tr bgcolor=#ff0000>
          <td>'.$datum2[2].'.'.$datum2[1].'.'.$datum2[0].'</td>
          <td>'.$realtime.'</td>
          </tr>';
    }


    danach gehts halt noch weiter mit anderen wörter in elseif schleifen und ganz zum schluss natürlich nochmal eine else schleife...

    Wäre super wenn ihr mir noch paar Tipps geben könntet.

    Vielen Dank !

    Mfg Beatzler


    Zuletzt modifiziert von Beatzler am 28.08.2009 - 14:35:06
    0 Mitglieder finden den Beitrag gut.
  20. #20
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Wie gesagt, man müsste das Cookie durch das Popup erst setzen, also im Code der Seite die im Popup erscheint und dann der Seite, die das Popup ständig öffnet halt prüfen, ob das Cookie gesetzt ist.

    Und du kannst auch ruhig den ganzen Code schicken, nicht nur den Ausschnitt, wenn ich das mit den elseif etc höre klingt es optimierungsfähig.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  21. #21
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Hey Mairu,

    vielen Dank zunächst. Ich habs nun nochmal selber probiert mit div. Skripts aber ich bekomme es einfach nicht hin traurig

    Hier nun mal meine kompletten Dateien:

    Die Aufrufphp Datei:

    </font><?php
    echo "<meta http-equiv=\"refresh\" content=\"5; URL=\"POPUPaufruf.php>";
    define ('LIMIT_NUM', '3');
    
    
    @mysql_connect("localhost", "root", "******") or die("".mysql_error()."Ohne Datenbank läuft nunmal nichts. Sorry, die Page ist down, bis die technischen Probleme behoben sind. <br><center>Schaut doch nochmal in 5 Minuten vorbei!</center>");    
    @mysql_select_db("pocsag") or die("Konnte Datenbank nicht benutzen, Fehlermeldung: ".mysql_error());
    
    ######################
    ######################
    $sql = "SELECT COUNT(*) as Anzahl  FROM Pocsag WHERE ric != '111111' AND DATE_SUB(NOW(), INTERVAL 1 DAY) < Uhrzeit  ";
    $result = mysql_query($sql) OR die(mysql_error());
    $anzahl = mysql_result($result, 0);
    $start = isset($_GET['page'])?(int)$_GET['page']:1;
    if(!LIMIT_NUM) {
    die("Benötigte Konstante LIMIT_NUM ist nicht definiert");
    }
    $num_pages = ceil($anzahl/LIMIT_NUM);
    if(!$num_pages) {
    $num_pages = 0;
    }
    if($start < 1) {
    $start = 1;
    }
    if($start > $num_pages) {
    $start = $num_pages;
    }
    $offset = ($start - 1) * LIMIT_NUM;
    ######################
    ######################
    
    $sql = "SELECT id,Uhrzeit,poctext,ric,sub FROM `Pocsag` WHERE ric != '111111' AND DATE_SUB(NOW(), INTERVAL 1 DAY) < Uhrzeit ORDER BY id DESC LIMIT
    ".$offset.",".LIMIT_NUM." ";
    
    
    // Überschrift 
    echo '<table border="1">
            <tr bgcolor=#a9a9a9>
            <td>Letzte Tabellen:</td>
    	</tr>
    		';
    
    
    $query = mysql_query($sql) or die(mysql_error());
    if(mysql_num_rows($query)){
        while($row = mysql_fetch_assoc($query)) {
            $datum = explode(" ",$row['Uhrzeit']);
            $realdate = $datum[0];
            $realtime = $datum[1];
            $datum2 = explode("-",$realdate);
            /* old part 
    		echo '<font size="2" face="Arial">ID: '.$row['id'].'</font><br>';
    		echo '<font size="2" face="Arial">Ric: '.$row['ric'].'</font><br>';
    		echo '<font size="2" face="Arial">Poctext: '.$row['poctext'].'</font><br>';
    		echo '<font size="2" face="Arial">Sub: '.$row['sub'].'</font><br>';
    		echo '<font size="2" face="Arial">Datum: '.$datum2[2].".".$datum2[1].".".$datum2[0].'</font><br>';
    		echo '<font size="2" face="Arial">Uhrzeit: '.$realtime.'</font><br>';
    		/* end old part */
            
            $istrichinaliases = "SELECT * FROM `aliases` WHERE RIC = '".$row['ric']."' ";
            $result = mysql_query($istrichinaliases) or die(mysql_error());
            if(mysql_num_rows($result)){
                $alias = mysql_fetch_assoc($result);
               // echo '<font size="2" face="Arial"><b>Alias:</b> '.$alias['alias'].'</font><br><br>'; // comment if works
            } else {
                $alias = array();
                $alias['alias'] = " - ";
            }
    
    
    
    
            /* new part */
    	 if ((stristr($alias['alias'],"Wort1"))==true)    // Alarm POP UP für alle Meldungen, die "Wort1" im Alias haben
    	    {
    echo "<body onload='winopen()'>
    <script>
    function winopen(){
    window.open('http://meinepopupadresse.de','POP ',
    'scrollbars=no,location=yes,directories=no,status=no,menubar=no,toolbar=no,resizable=no,dependent=no,width=500,height=300')
    }
    </script>";
    echo '<tr bgcolor=#ff0000>
          <td>'.$datum2[2].'.'.$datum2[1].'.'.$datum2[0].'</td>
          <td>'.$realtime.'</td>
          </tr>';
    }  
    	 elseif ((stristr($alias['alias'],"Wort2"))==true)    
    	    {
    echo "<body onload='winopen()'>
    <script>
    function winopen(){
    window.open('http://meinepopupadresse.de','POP ',
    'scrollbars=no,location=yes,directories=no,status=no,menubar=no,toolbar=no,resizable=no,dependent=no,width=500,height=300')
    }
    </script>";
    echo '<tr bgcolor=#ff0000>
          <td>'.$datum2[2].'.'.$datum2[1].'.'.$datum2[0].'</td>
          <td>'.$realtime.'</td>
          </tr>';
    }  
    	 elseif ((stristr($alias['alias'],"Wort3"))==true)   
    	    {
    echo "<body onload='winopen()'>
    <script>
    function winopen(){
    window.open('http://meinepopupadresse.de','POP ',
    'scrollbars=no,location=yes,directories=no,status=no,menubar=no,toolbar=no,resizable=no,dependent=no,width=500,height=300')
    }
    </script>";
    echo '<tr bgcolor=#ff0000>
          <td>'.$datum2[2].'.'.$datum2[1].'.'.$datum2[0].'</td>
          <td>'.$realtime.'</td>
          </tr>';
    }  
    
    
    else 
                {
                echo '<tr>	
        	<td>'.$datum2[2].'.'.$datum2[1].'.'.$datum2[0].'</td>
    	<td>'.$realtime.'</td>
    	</tr> ';
                } 
    }
    
            /* End new part */
    
    }
     #####################
    
    
    ?>


    Die Eigentliche POPUP Datei welche als Iframe in einer HTML Datei aufgerufen wird ( weil in der HTML Datei eine Hintergrundgrafik und CSS / Flash Elemente eingebaut sind):

    </font><?php
    echo "<meta http-equiv=\" URL=\"POPUP.php>";
    define ('LIMIT_NUM', '1');
    
    
    @mysql_connect("localhost", "root", "*****") or die("".mysql_error()."Ohne Datenbank läuft nunmal nichts. Sorry, die Page ist down, bis die technischen Probleme behoben sind. <br><center>Schaut doch nochmal in 5 Minuten vorbei!</center>");    
    @mysql_select_db("pocsag") or die("Konnte Datenbank nicht benutzen, Fehlermeldung: ".mysql_error());
    
    ######################
    ######################
    $sql = "SELECT COUNT(*) as Anzahl  FROM Pocsag WHERE ric != '111111' AND DATE_SUB(NOW(), INTERVAL 1 DAY) < Uhrzeit  ";
    $result = mysql_query($sql) OR die(mysql_error());
    $anzahl = mysql_result($result, 0);
    $start = isset($_GET['page'])?(int)$_GET['page']:1;
    if(!LIMIT_NUM) {
    die("Benötigte Konstante LIMIT_NUM ist nicht definiert");
    }
    $num_pages = ceil($anzahl/LIMIT_NUM);
    if(!$num_pages) {
    $num_pages = 0;
    }
    if($start < 1) {
    $start = 1;
    }
    if($start > $num_pages) {
    $start = $num_pages;
    }
    $offset = ($start - 1) * LIMIT_NUM;
    ######################
    ######################
    
    $sql = "SELECT id,Uhrzeit,poctext,ric,sub FROM `Pocsag` WHERE ric != '111111' AND DATE_SUB(NOW(), INTERVAL 1 DAY) < Uhrzeit ORDER BY id DESC LIMIT
    ".$offset.",".LIMIT_NUM." ";
    
    
    // Überschrift 
    echo '<table border="0">
            <tr>
            <td></td>
    	</tr>
    		';
    
    
    $query = mysql_query($sql) or die(mysql_error());
    if(mysql_num_rows($query)){
        while($row = mysql_fetch_assoc($query)) {
            $datum = explode(" ",$row['Uhrzeit']);
            $realdate = $datum[0];
            $realtime = $datum[1];
            $datum2 = explode("-",$realdate);
            /* old part 
    		echo '<font size="2" face="Arial">ID: '.$row['id'].'</font><br>';
    		echo '<font size="2" face="Arial">Ric: '.$row['ric'].'</font><br>';
    		echo '<font size="2" face="Arial">Poctext: '.$row['poctext'].'</font><br>';
    		echo '<font size="2" face="Arial">Sub: '.$row['sub'].'</font><br>';
    		echo '<font size="2" face="Arial">Datum: '.$datum2[2].".".$datum2[1].".".$datum2[0].'</font><br>';
    		echo '<font size="2" face="Arial">Uhrzeit: '.$realtime.'</font><br>';
    		/* end old part */
            
            $istrichinaliases = "SELECT * FROM `aliases` WHERE RIC = '".$row['ric']."' ";
            $result = mysql_query($istrichinaliases) or die(mysql_error());
            if(mysql_num_rows($result)){
                $alias = mysql_fetch_assoc($result);
               // echo '<font size="2" face="Arial"><b>Alias:</b> '.$alias['alias'].'</font><br><br>'; // comment if works
            } else {
                $alias = array();
                $alias['alias'] = " - ";
            }
    
    
    
    
            /* new part */
    	 if ((stristr($alias['alias'],"Wort1"))==true)    
    	                {
    	    echo '<tr>                
                      		<td>'.$realtime.'</td>
    				<td>'.$datum2[2].'.'.$datum2[1].'.'.$datum2[0].'</td>
                    		  </tr>';
                echo  '<td>'.$row['poctext'].'</td>';
                }	
    	 elseif ((stristr($alias['alias'],"Wort2"))==true)    
    	                {
                echo '<tr>                
                       		<td>'.$realtime.'</td>
    				<td>'.$datum2[2].'.'.$datum2[1].'.'.$datum2[0].'</td>
                      </tr>';
                echo  '<td>'.$row['poctext'].'</td>';
                } 
    	 elseif ((stristr($alias['alias'],"Wort3"))==true)    
    	  	                {
                echo '<tr>                
                       		<td>'.$realtime.'</td>
    				<td>'.$datum2[2].'.'.$datum2[1].'.'.$datum2[0].'</td>
                      </tr>';
                echo  '<td>'.$row['poctext'].'</td>';
                } 
    
    
    else 
                {
                echo ' <tr>                
                       		<td>'.$realtime.'</td>
    				<td>'.$datum2[2].'.'.$datum2[1].'.'.$datum2[0].'</td>
                      </tr>';
                echo ' <td>KEINE  NACHRICHTEN ! </td>';
                } 
    }
    
            /* End new part */
    
    }
     #####################
    
    
    ?>




    Ich weiß das das ziehmlich zusammengebastelt ist alles aber habe es mit meinen Kenntnissen nicht anders hinbekommen zwinker dafür läuft es biher echt super nur halt das sich das POPUP Immer wieder öffnet traurig

    Vielen Dank für jede Hilfestellung !

    MFG Beatzler
    0 Mitglieder finden den Beitrag gut.
  22. #22
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Die Seite mit dem Iframe wäre wohl die Seite, die geändert werden muss, es wäre nicht ganz uninteressant welche Seiten denn dann geöffnet werden meinepopupadresse.de kanns ja wohl nicht sein.

    Ansonsten mach ich es mal allgemein.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  23. #23
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Also hier mal ein allgemeines Beispiel.

    Einmal eine öffnende Datei
    openpop.php
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     <head>
      <meta name="generator" content="PSPad editor, www.pspad.com" />
      <meta http-equiv="content-type" content="text/html; charset=utf-8" />
      <meta http-equiv="refresh" content="5; URL=openpopup.php" />
      <title>Test mit Popup</title>
     </head>
     <body>
    <?php
    if (!isset($_COOKIE['popupoffen'])) {
    	?>
    <script type="text/javascript">
    function winopen(){
    	window.open('popup.htm','POP',
    	'scrollbars=no,location=yes,directories=no,status=no,menubar=no,toolbar=no,resizable=no,dependent=no,width=500,height=300');
    }
    winopen();
    </script>
    Popup ge&ouml;ffnet.
    	<?php
    } else {
    	echo 'kein Popup';
    }
    ?>
     </body>
    </html>


    und der Inhalt des Popups (popup.htm)
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     <head>
      <meta name="generator" content="PSPad editor, www.pspad.com" />
      <meta http-equiv="content-type" content="text/html; charset=utf-8" />
      <title>Popup</title>
    <script type="text/javascript">
    /**
     * Set a cookie
     * @param {string} n name
     * @param {scalar} v value
     * @param {int} seconds
     */
    function setCookie(n, v, secs) {
    	var e = '', d;
    	if (secs) {
    	    d = new Date();
    	    d.setTime(d.getTime() + (secs * 1000));
    	    e = "; expires=" + d.toGMTString();
    	}
    	document.cookie = n + "=" + v + e + "; path=/";
    }
           
    /**
     * get a cookie
     * @param {string} n name
     */
    function getCookie(n) {
    	var match = n + "=", c, ca = document.cookie.split(';'), i;
    	for (i = 0; i < ca.length; i++) {
    	    c = ca[i];
    		if (c.indexOf(match) === 0) {
    	            return c.substring(match.length, c.length);
    	    }
    	}
    	return null;
    }
           
    /**
     * Delete a cookie
     * @param {string} n name
     */
    function delCookie(n) {
        setCookie(n, "", -1);
    }
    
    setCookie('popupoffen', 'true', 300);
    </script>
     </head>
     <body onunload="delCookie('popupoffen');">
       Hier der Inhalt des Popups
     </body>
    </html>
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  24. #24
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Hey,

    danke für deine Hilfe, das ist echt klasse !

    Habe nun mal versucht dein Beispiel an mein Skript anzupassen nur leider klappt das nicht traurig Pop UP öffnet sich wie gewünscht aber leider immer noch immer wieder alle 5 sek.

    Hier mal meine versuche:

    Datei welche prüft und ggf. das Popup aufruft:

    Alarmpopup.php
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     <head>
      <meta name="generator" content="PSPad editor, www.pspad.com" />
      <meta http-equiv="content-type" content="text/html; charset=utf-8" />
      <meta http-equiv="refresh" content="5; URL=Alarmpopup.php" />
      <title>POPUP</title>
     </head>
     <body>
    
    <?php
    echo "<meta http-equiv=\"refresh\" content=\"5; URL=\"AlarmPOPUP.php>";
    define ('LIMIT_NUM', '3');
    
    
    @mysql_connect("localhost", "root", "****") or die("".mysql_error()."Ohne Datenbank läuft nunmal nichts. Sorry, die Page ist down, bis die technischen Probleme behoben sind. <br><center>Schaut doch nochmal in 5 Minuten vorbei!</center>");    
    @mysql_select_db("pocsag") or die("Konnte Datenbank nicht benutzen, Fehlermeldung: ".mysql_error());
    
    ######################
    ######################
    $sql = "SELECT COUNT(*) as Anzahl  FROM Pocsag WHERE ric != '111111' AND DATE_SUB(NOW(), INTERVAL 1 DAY) < Uhrzeit  ";
    $result = mysql_query($sql) OR die(mysql_error());
    $anzahl = mysql_result($result, 0);
    $start = isset($_GET['page'])?(int)$_GET['page']:1;
    if(!LIMIT_NUM) {
    die("Benötigte Konstante LIMIT_NUM ist nicht definiert");
    }
    $num_pages = ceil($anzahl/LIMIT_NUM);
    if(!$num_pages) {
    $num_pages = 0;
    }
    if($start < 1) {
    $start = 1;
    }
    if($start > $num_pages) {
    $start = $num_pages;
    }
    $offset = ($start - 1) * LIMIT_NUM;
    ######################
    ######################
    
    $sql = "SELECT id,Uhrzeit,poctext,ric,sub FROM `Pocsag` WHERE ric != '111111' AND DATE_SUB(NOW(), INTERVAL 1 DAY) < Uhrzeit ORDER BY id DESC LIMIT
    ".$offset.",".LIMIT_NUM." ";
    
    
    // Überschrift 
    echo '<table border="1">
            <tr bgcolor=#a9a9a9>
            <td>Letzte Tabellen:</td>
    	</tr>
    		';
    
    
    $query = mysql_query($sql) or die(mysql_error());
    if(mysql_num_rows($query)){
        while($row = mysql_fetch_assoc($query)) {
            $datum = explode(" ",$row['Uhrzeit']);
            $realdate = $datum[0];
            $realtime = $datum[1];
            $datum2 = explode("-",$realdate);
            /* old part 
    		echo '<font size="2" face="Arial">ID: '.$row['id'].'</font><br>';
    		echo '<font size="2" face="Arial">Ric: '.$row['ric'].'</font><br>';
    		echo '<font size="2" face="Arial">Poctext: '.$row['poctext'].'</font><br>';
    		echo '<font size="2" face="Arial">Sub: '.$row['sub'].'</font><br>';
    		echo '<font size="2" face="Arial">Datum: '.$datum2[2].".".$datum2[1].".".$datum2[0].'</font><br>';
    		echo '<font size="2" face="Arial">Uhrzeit: '.$realtime.'</font><br>';
    		/* end old part */
            
            $istrichinaliases = "SELECT * FROM `aliases` WHERE RIC = '".$row['ric']."' ";
            $result = mysql_query($istrichinaliases) or die(mysql_error());
            if(mysql_num_rows($result)){
                $alias = mysql_fetch_assoc($result);
               // echo '<font size="2" face="Arial"><b>Alias:</b> '.$alias['alias'].'</font><br><br>'; // comment if works
            } else {
                $alias = array();
                $alias['alias'] = " - ";
            }
    
    
    
    
            /* new part */
    	 if ((stristr($alias['alias'],"Wort1"))==true)    
    	    {
    if (!isset($_COOKIE['popupoffen'])) {
        ?>
    <script type="text/javascript">
    function winopen(){
        window.open('/vme/vme.html','POP',
        'scrollbars=no,location=yes,directories=no,status=no,menubar=no,toolbar=no,resizable=no,dependent=no,width=500,height=300');
    }
    winopen();
    </script>
        <?php
    } else
      {
      }
    }
    
    	 elseif ((stristr($alias['alias'],"Wort2"))==true)    
    		    {
    if (!isset($_COOKIE['popupoffen'])) {
        ?>
    <script type="text/javascript">
    function winopen(){
        window.open('/vme/vme.html','POP',
        'scrollbars=no,location=yes,directories=no,status=no,menubar=no,toolbar=no,resizable=no,dependent=no,width=500,height=300');
    }
    winopen();
    </script>
        <?php
    } else
      {
      }
    }
    
    else 
                {
                echo '<tr>	
        	<td>'.$datum2[2].'.'.$datum2[1].'.'.$datum2[0].'</td>
    	<td>'.$realtime.'</td>
    	</tr> ';
                } 
    }
    
            /* End new part */
    
    }
     #####################
    
    
    ?>



    und das eigentliche Popup die vme.html:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-utf-8"" />
    <title>POPUP</title>
    <style type="text/css">
    <!--
    body {
    	background-image: url(VME%20Skin.jpg);
    	background-repeat: no-repeat;
    }
    .Stil1 {font-family: Arial}
    .Stil3 {font-size: smaller}
    .Stil4 {font-size: 9px}
    #POCTEXT
    {
     position:absolute;
     left:72px; top:45px; width:100px; height:104px;
    }
    #BUTTON
    {
     position:absolute;
     left:358px; top:225px; width:56px; height:19px;
    }
    
    -->
    </style>
    <script type="text/javascript">
    /**
     * Set a cookie
     * @param {string} n name
     * @param {scalar} v value
     * @param {int} seconds
     */
    function setCookie(n, v, secs) {
        var e = '', d;
        if (secs) {
            d = new Date();
            d.setTime(d.getTime() + (secs * 1000));
            e = "; expires=" + d.toGMTString();
        }
        document.cookie = n + "=" + v + e + "; path=/";
    }
           
    /**
     * get a cookie
     * @param {string} n name
     */
    function getCookie(n) {
        var match = n + "=", c, ca = document.cookie.split(';'), i;
        for (i = 0; i < ca.length; i++) {
            c = ca[i];
            if (c.indexOf(match) === 0) {
                    return c.substring(match.length, c.length);
            }
        }
        return null;
    }
           
    /**
     * Delete a cookie
     * @param {string} n name
     */
    function delCookie(n) {
        setCookie(n, "", -1);
    }
     
    setCookie('popupoffen', 'true', 300);
    </script>
    </head>
    
    <body onunload="delCookie('popupoffen');">
      <div id="POCTEXT" class="Stil1">
                    
    <iframe src="vmetext.php" width="330" height="110" frameborder="0" class="Stil1"> </iframe>
    </div>
    
    
      <div id="BUTTON" class="Stil1">
        <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="55" height="18">
          <param name="movie" value="Buttongruen.swf" />
          <param name="quality" value="high" />
          <embed src="Buttongruen.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="55" height="18"></embed>
        </object>
      </div>
    </body>
    </html>


    Versteh nicht warum das nicht reagiert? Ist doch eigentlich fast genauso wie in den beispieldateien.

    Vielen Dank für Hilfe !

    MFg Beatzler


    Zuletzt modifiziert von Beatzler am 30.08.2009 - 19:27:07
    0 Mitglieder finden den Beitrag gut.
  25. #25
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Eigentlich schon, sehe jetzt auch kein Fehler, sind die Dateien online, also gibts ein Link dazu?

    Und noch nebenbei was soll das mit dem elseif und Wort2, wenn du doch genau das gleiche machst wie bei Wort1?
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  26. #26
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Hey,

    also online ist das leider noch nicht traurig läuft bisher nur auf nem lokalen Webserver

    Das Wort 1 / Wort 2 sind halt die unterschiedlichen kürzel nach denen in der Datenbank gesucht wird. Wird eines von den Kürzeln gefunden soll ja nur das PopUp kommen...

    Mhhh das echt alles sehr komisch traurig versteh ich nicht....

    Ich glaube er setzt noch nichtmal das Cookie ...

    Müsste doch im Browser unter Cookies nen Cookie finden welches den Wert popupoffen hat oder?



    Mfg Beatzler


    Zuletzt modifiziert von Beatzler am 30.08.2009 - 21:25:56
    0 Mitglieder finden den Beitrag gut.
  27. #27
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Richtig, es liegt wohl daran dass er es nicht setzt, weshalb weiß ich nicht.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  28. #28
    User Pic
    Beatzler Mitglied
    Registriert seit
    17.04.2005
    Beiträge
    186
    Beitragswertungen
    0 Beitragspunkte
    Hey,

    mhh hätte nicht nochmal irgendjemand nen Tipp für mich ?

    Wie könnte man das noch weiter eingrenzen oder prüfen ?

    MFG Beatzler

    EDIT:

    habe grad mal mit Firebug den Aufruf überwacht mit folgendem Ergebnis:

    "Die Erlaubnis für den Aufruf der Methode Location.toString wurde verweigert"


    Zuletzt modifiziert von Beatzler am 02.09.2009 - 20:19:55
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Allgemein

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten