Re: seltsames Verhalten - baseportal Forum - Web-Anwendungen einfach, schnell, leistungsfähig!
baseportal
English - Deutsch "Es gibt keine dummen Fragen - jeder hat einmal angefangen"

 baseportal-ForumDie aktuellsten 10, 30, 50, 100 Einträge anzeigen.  

 
 Ausgewählter Eintrag: Zur Liste 
    Beitrag von Roger (141 Beiträge) am Dienstag, 28.Januar.2003, 14:46.
    Re: seltsames Verhalten

      Hallo Sander,
      "!=" war ein Schreibfehler, entschuldige, ich habe es mit ==* und mit =* versucht.

      idtable habe ich auch mit und ohne "" versucht.

      Das eigentliche kleine Script funktioniert ja auch. Was nicht funktioniert, nickname bekommt irgendwie den Wert "Gast" was ja normal ist. Aber mit

      $tnick=$nickname;
      

      am anfang und

      $nickname=$tnick;
      

      am Ende wollte ich dieses Problem umgehen.

      An späteren Stellen in meinem Code frage ich unter anderem ab:

      if ($nickname ne "Gast)
        { 
         .
         .
         .
        }
      else
        {
         .
         .
         .
        }
      

      Was auch ohne den Code vorhin einwandfrei funktioniert.
      Mit dem Code wird aber "angenommen" daß $nickname immer "Gast" ist. An alle anderen stellen im Code, die vorher kommen, gibt es dieses Problem nicht.


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Roger (141 Beiträge) am Dienstag, 28.Januar.2003, 14:11. WWW: www.einsam-zweisam.de
    seltsames Verhalten

      Hallo, auf meiner Webseite möchte ich nun darstellen, wer gerade online ist.
      Jeder User der Online ist hat eine sessionid. diese Sessionid wird bei jeder Aktion, die der User ausführt neu geschrieben. Dabei wird ein Feld "Timestamp" ständig mit der aktuellen Zeit mitgeführt. Wenn die timestamp älter als 10 Minuten ist, dann wird die Sessionid in der idtable gelöscht und der User hat automatisch nur noch Gaststatus.

      alles Funktioniert sehr gut, die Startseite hat bei einem "Gast" ein LoginFeld und alle Unterseiten haben ein eingeschränktes Menu.

      Jetzt möchte ich ein neues Feld auf der Startseite einfügen. Mit Hilfe der idtable erkenne ich ja, wer online ist und möchte die Mitglieder auflisten.

      <perl>
      $tnick=$nickname;
      $gastz=0;
      get "nickname!=* sort=TimeStamp", idtable;
      while (get_next("idtable"))
      {
      if ($nickname ne "Gast")
         {
         out $nickname;
         out "<br>";
         }
        else
         {
         $gastz=$gastz=$gastz+1;
         }
      }
       out "Gäste (",$gastz,")";
      $nickname=$tnick;
      </perl>
      

      Das habe ich bewerkstelligt und eigentlich funktioniert es auch.
      Aber das Problem ist, ein angemeldeter User wird zwar als angemeldet erkannt, aber seltsamerweise gibt es ein Problem.
      In der Hauptseite habe ich ja die Abfrage mit Perl, ob der User Gaststatus hat. Aufgrund dieser Abfrage habe ich verschiedene Menus und einige andere Unterschiede in der "Startseite", wie zum Beispiel das Loginfeld.
      Ohne diesen Code funktioniert alles, mit diesem Code funktioniert es nicht, es bleibt immer das Loginfeld erhalten.
      Was muß ich ändern?

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 28.Januar.2003, 14:28.
    Re: seltsames Verhalten

     Antworten

    Beitrag von Roger (141 Beiträge) am Dienstag, 28.Januar.2003, 14:46.
    Re: seltsames Verhalten

      Hallo Sander,
      "!=" war ein Schreibfehler, entschuldige, ich habe es mit ==* und mit =* versucht.

      idtable habe ich auch mit und ohne "" versucht.

      Das eigentliche kleine Script funktioniert ja auch. Was nicht funktioniert, nickname bekommt irgendwie den Wert "Gast" was ja normal ist. Aber mit

      $tnick=$nickname;
      

      am anfang und

      $nickname=$tnick;
      

      am Ende wollte ich dieses Problem umgehen.

      An späteren Stellen in meinem Code frage ich unter anderem ab:

      if ($nickname ne "Gast)
        { 
         .
         .
         .
        }
      else
        {
         .
         .
         .
        }
      

      Was auch ohne den Code vorhin einwandfrei funktioniert.
      Mit dem Code wird aber "angenommen" daß $nickname immer "Gast" ist. An alle anderen stellen im Code, die vorher kommen, gibt es dieses Problem nicht.

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 28.Januar.2003, 15:27.
    Re: seltsames Verhalten

      hmmm...

      Probier mal zu debuggen:

      <perl>
      $tnick=$nickname;
      $gastz=0;
      out "Nickname vor get $tnick<br>";
      get "sort=TimeStamp", "idtable";
      while (get_next("idtable"))
      {
      out "Nickname im get $nickname<br>";
      if ($nickname ne "Gast")
      {
         #out $nickname;
        # out "<br>";
         }
        else
         {
         $gastz=$gastz=$gastz+1;
         }
      }
      out "Gäste (",$gastz,")";
      $nickname=$tnick;
      out "Nickname nach get $nickname<br>";
      

      </perl>

      Sander

     Antworten

    Beitrag von Roger (141 Beiträge) am Dienstag, 28.Januar.2003, 15:58.
    Re: seltsames Verhalten

      Hallo Sander,

      ist schon komisch, ich würde sagen, nach dem Ergebnis zu urteilen dürfte alles funzen, aber es tut es nicht.

      Die Ausgabe sieht so aus.

      Nickname vor get superadmin
      Nickname im get Gast
      Nickname im get Gast
      Nickname im get TamTamGepy
      Nickname im get Nicomaus
      Nickname im get Genesis
      Nickname im get superadmin
      Nickname im get Gast
      Gäste (3)
      Nickname nach get superadmin

      Verstehen kann ich jetzt noch weniger.


      Der Fehler taucht einige KByte weiter im Code in diesem Bereich auf:

      <perl>
      if ($nickname ne "Gast")
       {
      out <<EOF;
          <td bgcolor=maroon width=122 valign=top style='width:91.2pt;border:solid maroon .5pt;border-bottom:none;padding:0cm 3.5pt 0cm 3.5pt'>
          <p class=MsoNormal><span style='font-size:8.0pt;mso-bidi-font-size:12.0pt;
          color:white'><b>$nickname</b><o:p></o:p></span></p>
          </td>
         </tr>
         <tr>
          <td width=122 valign=top style='width:91.2pt;border:solid gray .5pt;
          border-top:none;mso-border-top-alt:solid gray .5pt;background:#e6e6e6;
          padding:0cm 3.5pt 0cm 3.5pt'>
         <table border=0 cellspacing=0 cellpadding=0 style='margin-left:
       -.8pt;border-collapse:collapse;border:none;mso-border-alt:
       solid windowtext .5pt;mso-padding-alt:0cm 3.5pt 0cm 3.5pt'>
      
         <tr>$td     <p class=MsoNormal><span style='font-size:8.0pt;mso-bidi-font-size:12.0pt'>     <a href="javascript:user('http://baseportal.de/baseportal/RogerPeterWerner/P/huetten&sessionid=$sessionid&huette=huetteneigner')">eigene Seite</a><o:p></o:p></span></p>    $_td</tr><tr>$td     <p class=MsoNormal><span style='font-size:8.0pt;mso-bidi-font-size:12.0pt'><a href="http://baseportal.de/baseportal/RogerPeterWerner/P/post_lesen&sessionid=$sessionid" target="post">Post lesen</a><o:p></o:p></span></p>    $_td</tr><tr>$td     <p class=MsoNormal><span style='font-size:8.0pt;mso-bidi-font-size:12.0pt'>     <a href="http://baseportal.de/baseportal/RogerPeterWerner/P/arch_lesen&sessionid=$sessionid" target="post">Post Archiv</a><o:p></o:p></span></p>    $_td</tr><tr>$td     <p class=MsoNormal><span style='font-size:8.0pt;mso-bidi-font-size:12.0pt'>    <A href="http://baseportal.de/baseportal/RogerPeterWerner/P/gaest_lesn2&sessionid=$sessionid&huette=$nickname" target="post">
         Gästebuch</a><o:p></o:p></span></p>
         $_td</tr><tr>$td
          <p class=MsoNormal><span style='font-size:8.0pt;mso-bidi-font-size:12.0pt'>
      <A HREF="http://www.zanox-affiliate.de/ppc/?298930C90617028" target='_werb'>Shop@einsamzweisam</A>
      </a><o:p></o:p></span></p>
         $_td</tr>
         </table>
      EOF
       }
      else
      {
      out <<EOF;
          <td bgcolor=maroon width=122 valign=top style='width:91.2pt;border:solid maroon .5pt;border-bottom:none;padding:0cm 3.5pt 0cm 3.5pt'>
          <p class=MsoNormal><span style='font-size:8.0pt;mso-bidi-font-size:12.0pt;
          color:white'><b>Login</b><o:p></o:p></span></p>
          </td>
         </tr>
         <tr>
          <td width=122 valign=top style='width:91.2pt;border:solid gray .5pt;
          border-top:none;mso-border-top-alt:solid gray .5pt;background:#e6e6e6;
          padding:0cm 3.5pt 0cm 3.5pt'>
          <p class=MsoNormal><span style='font-size:8.0pt;mso-bidi-font-size:12.0pt'>
      <form action="http://baseportal.de/baseportal/RogerPeterWerner/P/weiter" Target="seite">
      <input type="hidden" name="htx" value="/RogerPeterWerner/P/benutzerverwaltung">
      Nickname:<br>Achtung keine Umlaute mehr! ä=ae, ö=ue usw...keine Leerzeichen!<br>
      <INPUT TYPE="TEXT" MAXLENGTH="20" SIZE="16" NAME="nickname">
      Passwort:<br>
      <INPUT TYPE="password" MAXLENGTH="20" SIZE="16" NAME="epw"><br>
      <INPUT TYPE=SUBMIT NAME="Button_Abschicken" VALUE="Login">
      <a href="http://baseportal.de/baseportal/RogerPeterWerner/P/anmeldung" target="seite1">Anmeldung
      

      </span></p>
      </form>
      EOF
      }
      </perl>
      

      Sobald ich meinen neuen Code vorher eingesetzt habe, dann wird im sonst funktionieren Code immer!!!! der Teil nach dem "else" ausgeführt.

      Vor dem "neuen" code habe ich einige identische Abfragen, die allerdings funktionieren. Wenn ich den neuen Code nach dem "Fehlerbehafteten" Teil einsetze, dann funktioniert es auch.

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 28.Januar.2003, 16:08.
    Re: seltsames Verhalten

     Antworten

    Beitrag von Roger (141 Beiträge) am Dienstag, 28.Januar.2003, 16:15.
    Re: seltsames Verhalten

      Hallo Sander,

      wenn man den Wald nicht sieht, weil da Bäume stehen, dann kann man sich selbst 2 Tage beschäftigen und danach Dich auch noch.
      Entschuldige, ich habe meinen Fehler gefunden.
      Da ich vor jeder Abfrage sicherheitshalber die Sessionid nocheinmal auslese hätte ich sie auch sichern sollen. Das habe ich jetzt gemacht:

      $sessid=$sessionid;
      
      ....code
      $sessionid=$sessid;

      und schon funktioniert es. Ich glaube ich muß meinen Code mal ganz in Ruhe durchforsten, ich wiederhole eine Operationen doch zu oft, sonst wäre ich nicht in meine eigene Falle getreten.

      Alles Liebe

      Roger

     Antworten


     
 Liste der Einträge von 40800 bis 40950:Einklappen Zur Eingabe 
Neueste Einträge << 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | Neuere Einträge < Zur Eingabe  > Ältere Einträge | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >> Älteste Einträge


Zurück zur Homepage

© baseportal.de. Alle Rechte vorbehalten. Nutzungsbedingungen



powered in 0.08s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!