Frage zum Forum aus der Bib - 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 Old Eagle Eye (148 Beiträge) am Montag, 18.Februar.2002, 17:16. WWW: www.bigmountain.at
    Frage zum Forum aus der Bib

      Hallo Perl-Cracks – speziell CB oder Sander!

      Ich versuche seit Tagen, das Forum aus der Bib an meine Bedürfnisse anzupassen und prinzipiell bin ich auch schon fertig, aber leider habe ich da ein Problem, über welches ich nicht drüber komme und ohne einer Lösung ist nichts mit Forum.
      Daher meine Frage an alle Perl-Spezialisten: Wie ist es möglich, dass ein und der selbe Code unterschiedliche Ergebnisse liefert?!?

      Bei mir funzt nämlich der Eintrag von Antworten nicht richtig. Ihr habt da eine Abfrage drinnen, die wie folgt lautet:

      .......
      if($_get{Pos} eq ""){
         get "Pos==#";
         $newPos=$Pos+1;
         $_get{range}="";
      } else{
         get "Pos<=$_get{Pos} Pos>=".($_get{Pos}-1)." sort=-";
         $_put{Shift}=$Shift+1; $newPos=$Pos;
      get_next;
      while(get_next){
         last if $Shift<$_put{Shift};
         $newPos=$Pos;
      }
      $Pos=0 if $_get{Pos}==$Pos;
      $newPos=($Pos+$newPos)/2;
      
      ..............

      Ich habe den Code beinahe unverändert übernommen, mit der Ausnahme, dass ich bei get noch als Zusatz meine Datenbank angegeben habe, da ansonsten immer eine Fehlermeldung kam, das Feld xy kann nicht gefunden werden. Mein get sieht also so aus:
      get "Pos<=$_get{Pos} Pos>=".($_get{Pos}-1)." sort=-", „$myDB“;
      

      Wenn ich diesen Code jetzt als Modul mit der Original DB laufen lasse, in dem ich die Variablen $_get{Pos} und $Shift manuell mit plausiblen Werten füttere (also z.B. Position 2 bei Shift 0), funktioniert alles einwandfrei – als Einfügeposition kommt 1.25 (da die Position 1.5 bereits durch eine andere Antwort belegt ist).
      Sobald der selbe Code aus dem htx mit dem Eingabe-Formular aufgerufen wird, stimmt die Berechnung, obwohl die selben Grundwerte da sind, nicht.
      Es fällt sofort beim ersten Durchlauf der while(get_next) Schleife raus, d.h. obwohl unmittelbar vor dem Aufruf die Werte von Pos & Shift noch stimmen, ist bei der Prüfung ‚last if....’ das Kriterium ‚blank < 1’ und damit erfüllt und damit ENDE. Als vermeintlich richtige Position habe ich dann 1.0 und auf dieser wird der Eintrag auch geschrieben (mit Shift==1).

      Ich kann’s mir nicht erklären – vielleicht habt ihr ja des Rätsels Lösung für mich.

      Schon mal vielen Dank
      OEE

      PS: Wie kann ich einem Formular ‚sagen’, dass es zu einer bestimmten DB gehört, denn das ist das einzige, was mir aufgefallen ist, dass ihr im Original Code nirgends eine DB angeben musstet und bei mir dadurch sofort ein Fehler gekommen ist.


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Old Eagle Eye (148 Beiträge) am Montag, 18.Februar.2002, 17:16. WWW: www.bigmountain.at
    Frage zum Forum aus der Bib

      Hallo Perl-Cracks – speziell CB oder Sander!

      Ich versuche seit Tagen, das Forum aus der Bib an meine Bedürfnisse anzupassen und prinzipiell bin ich auch schon fertig, aber leider habe ich da ein Problem, über welches ich nicht drüber komme und ohne einer Lösung ist nichts mit Forum.
      Daher meine Frage an alle Perl-Spezialisten: Wie ist es möglich, dass ein und der selbe Code unterschiedliche Ergebnisse liefert?!?

      Bei mir funzt nämlich der Eintrag von Antworten nicht richtig. Ihr habt da eine Abfrage drinnen, die wie folgt lautet:

      .......
      if($_get{Pos} eq ""){
         get "Pos==#";
         $newPos=$Pos+1;
         $_get{range}="";
      } else{
         get "Pos<=$_get{Pos} Pos>=".($_get{Pos}-1)." sort=-";
         $_put{Shift}=$Shift+1; $newPos=$Pos;
      get_next;
      while(get_next){
         last if $Shift<$_put{Shift};
         $newPos=$Pos;
      }
      $Pos=0 if $_get{Pos}==$Pos;
      $newPos=($Pos+$newPos)/2;
      
      ..............

      Ich habe den Code beinahe unverändert übernommen, mit der Ausnahme, dass ich bei get noch als Zusatz meine Datenbank angegeben habe, da ansonsten immer eine Fehlermeldung kam, das Feld xy kann nicht gefunden werden. Mein get sieht also so aus:
      get "Pos<=$_get{Pos} Pos>=".($_get{Pos}-1)." sort=-", „$myDB“;
      

      Wenn ich diesen Code jetzt als Modul mit der Original DB laufen lasse, in dem ich die Variablen $_get{Pos} und $Shift manuell mit plausiblen Werten füttere (also z.B. Position 2 bei Shift 0), funktioniert alles einwandfrei – als Einfügeposition kommt 1.25 (da die Position 1.5 bereits durch eine andere Antwort belegt ist).
      Sobald der selbe Code aus dem htx mit dem Eingabe-Formular aufgerufen wird, stimmt die Berechnung, obwohl die selben Grundwerte da sind, nicht.
      Es fällt sofort beim ersten Durchlauf der while(get_next) Schleife raus, d.h. obwohl unmittelbar vor dem Aufruf die Werte von Pos & Shift noch stimmen, ist bei der Prüfung ‚last if....’ das Kriterium ‚blank < 1’ und damit erfüllt und damit ENDE. Als vermeintlich richtige Position habe ich dann 1.0 und auf dieser wird der Eintrag auch geschrieben (mit Shift==1).

      Ich kann’s mir nicht erklären – vielleicht habt ihr ja des Rätsels Lösung für mich.

      Schon mal vielen Dank
      OEE

      PS: Wie kann ich einem Formular ‚sagen’, dass es zu einer bestimmten DB gehört, denn das ist das einzige, was mir aufgefallen ist, dass ihr im Original Code nirgends eine DB angeben musstet und bei mir dadurch sofort ein Fehler gekommen ist.

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Dienstag, 19.Februar.2002, 16:12.
    Re: Frage zum Forum aus der Bib

      Mmh, hast Du denn an den anderen Stellen im Skript auch Deine eigene Datenbank gesetzt?

      Also beim:

      get "Pos==#", "..deinedb..";
      

      und beim

      while(get_next "..deinedb..")
      

      und vermutlich an einigen anderen stellen (bei jedem get/mod/put/get_next...)

      was ich nich ganz verstehe: wieso willst du die db überhaupt anders nennen als das template? der trick mit dem nicht-angeben der db ist nämlich dass das template & die db gleich heissen...

     Antworten

    Beitrag von Old Eagle Eye (148 Beiträge) am Dienstag, 19.Februar.2002, 23:01. WWW: www.bigmountain.at
    Re: Frage zum Forum aus der Bib

      Zu Frage 1: Ja hab ich
      Zu Frage 2: Ich habs eigentlich nur deswegen anders benannt, da ich ein grundsätzlich bequemer Mensch bin und dieses eine Forum für mehrere Anwendungen laufen lassen möchte. Dafür ist von mir ein zusätzliches Feld Owner eingefügt worden. Im jeweiligen Unterverzeichnis habe ich dann ein htx - Forum, in welchem die Individualisierungen in Bezug auf Farben und dergleichen eingestellt werden. Die eigentliche DB liegt im root. Und es funktioniert ja auch alles klaglos, also Neuanlage, Anzeige, Auswahl etc, nur eben der Eintrag von Antworten ergibt keinen richtigen Wert. - Leider :-( und ich 'spiel' mich da jetzt schon eine ganze Woche damit rum, doch ich komm einfach auf keinen grünen Zweig. Außerdem fehlt mir die logische Erklärung dafür, was mich ja wahrscheinlich auch gleich mal auf die Spur des Bugs bringen würde.

      Ich hoffe auf Hilfe von euch Spezialisten
      Danke
      OEE

      PS: Wie geht es eigentlich meiner Anfrage bzgl. Relation-Feld?!?

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Mittwoch, 20.Februar.2002, 17:50.
    Re: Frage zum Forum aus der Bib

      Forum: Mmh, dann fällt mir spontan auch nix ein (müsste mich reinfuchsen und dazu hab ich grad keine Zeit)

      Relation: Ja, hatte bisher auch noch keine Zeit für gefunden, kannst mich ja nach einiger Zeit nochmal erinnern, falls ich immer noch nich... ;-)

     Antworten

    Beitrag von Old Eagle Eye (148 Beiträge) am Montag, 25.Februar.2002, 18:40. WWW: www.bigmountain.at
    OK - ich geb's zu

      mea culpa

      wenn vom vom gleichen Code schreibt, sollte es wirklich 'derselbe' Code sein und nicht eine kleine, beinahe unbedeutende, Abweichung aufweisen, über die man selber dann tagelang auch noch 'drüberliest'.

      Entschuldigt diesen unnötigen Eintrag und vor allem, falls einer von euch dafür Zeit aufgewendet hat - ich hab's geklärt.

      Trotzdem Danke
      OEE

     Antworten


     
 Liste der Einträge von 50101 bis 50251: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.06s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!