ilch Forum » Ilch Clan 1.1 » Fehlersuche und Probleme » Nextwarcounter

Geschlossen
  1. #1
    User Pic
    Sunshine Live Mitglied
    Registriert seit
    03.06.2009
    Beiträge
    1.029
    Beitragswertungen
    109 Beitragspunkte
    Hay, ich hab folgende frage und zwar hab ich bei mir auf der Hp den nextwarcounter drauf gemacht.
    Soweit so gut.
    "Leider" habe ich ja das Modifizierte Warsystem das von Dastiac.

    Und da funktioniert der Nextwarcounter nicht...
    Bzw es kommt nur ne Fehlermeldung.

    ES kommt folgende fehlermeldung
    ZitatZitat


    MySQL Error:
    1054 : Unknown column 'gegner' in 'field list'
    in Query:
    SELECT DATE_FORMAT(datime,'%d.%m.%y - %H:%i') as time,tag,`mod`,gegner, id, game FROM ic1_wars WHERE status = 2 AND datime >= '2010-10-07' ORDER BY datime,id DESC LIMIT 1

    Debug backtrace:
    @ mysql.php:32 -- debug_bt()
    @ mysql.php:50 -- db_check_error(...)
    @ nextwarcounter.php:15 -- db_query(...)
    @ design.php:332 -- require_once(...)
    @ design.php:174 -- design->get_boxcontent(...)
    @ design.php:71 -- design->replace_boxes(...)
    @ news.php:9 -- design->design(...)
    @ news.php:21 -- require_once(...)
    @ index.php:46 -- require_once(...)

    Kann man das auch mit den Warsystem von Dastiac kompentable machen?
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.634
    Beitragswertungen
    1193 Beitragspunkte
    Ja, der Name des Gegner ist in einer anderen Tabelle! Das bedeutet die Abfrage muss geändert werden!

    gegner = SELECT name FROM prefix_opponents
    rules :: doku :: faq :: linkus
    1 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Sunshine Live Mitglied
    Registriert seit
    03.06.2009
    Beiträge
    1.029
    Beitragswertungen
    109 Beitragspunkte
    ahhh!!! da hätt ich auch selbst drauf kommen muessen danke <3


    Zuletzt modifiziert von Sunshine Live am 07.10.2010 - 18:47:18
    1 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    justinleebrain Mitglied
    Registriert seit
    17.07.2008
    Beiträge
    82
    Beitragswertungen
    3 Beitragspunkte
    Hi,wo genau muss ich das denn einfügen?Hab jetzt nen paar Zeilen Probiert aber geht nicht seufz.

    <?php
    /* 
    ************************************************************************
    * Copyright (c) honklords.de, zocker-eppingen.de, mairu, fhag-gaming.de*
    ************************************************************************
    */
    defined ('main') or die ( 'no direct access' );
    
    $list = "1"; # anzahl der Nextwars die aufgelistet werden sollen
    
    echo '<table width="100%" border="0" cellpadding="2" cellspacing="0">';
    
    $akttime = date('Y-m-d');
    
    $erg = @db_query("SELECT DATE_FORMAT(datime,'%d.%m.%y - %H:%i') as time,tag,`mod`,gegner, id, game FROM prefix_wars WHERE status = 2 AND datime >= '".$akttime."' ORDER BY datime,id DESC LIMIT $list");
    
    if ( @db_num_rows($erg) == 0 ) {
    } else {
        while ($row = @db_fetch_object($erg) ) {
        $mod = '';
        $row2['reg']='';
        $hat = 'haben';
            $row->tag = ( empty($row->tag) ? $row->gegner : $row->tag );
            $mod = explode('on',$row->mod);
            $result = db_query("SELECT COUNT(*)as reg  FROM prefix_warmember WHERE wid = ".$row->id." AND aktion = 1") ;
            $row2 = db_fetch_assoc($result);
            if($row2['reg']<=1){$hat = 'hat';}
            echo '<tr><td>'.get_wargameimg($row->game).'</td></tr><tr>';
            echo '<td><a class="nextwars" href="index.php?wars-more-'.$row->id.'">';
            echo $row->time.' - '.$row->tag.'</a></td></tr><tr><td>Es '.$hat.' sich '.$row2['reg'].' von '.$mod['0'].' angemeldet.</td></tr>';
        }
    }
    
    //Nextwarcounter
        
    $timej = date('Y-m-d H:i:s');
    
    
    $erg = @db_query("SELECT DATE_FORMAT(datime,'%d.%m.%y - %H:%i') as wartime, DATE_FORMAT(datime,'%d') as tag,  DATE_FORMAT(datime,'%s') as sek, DATE_FORMAT(datime,'%i') as min, DATE_FORMAT(datime,'%H') as stu, datime, status, id FROM prefix_wars WHERE status = '2' and datime >= '".$timej."' order by datime ASC limit 1");
      if ( mysql_num_rows($erg) == 0 ) {
          echo '<tr><td align="center">kein War geplant</td></tr>';
        } else {
          $row = mysql_fetch_object($erg);
              echo '<tr><td align="center"><u>Zeit bis zum Warbeginn:</u></td></tr>';
              echo '<tr><td><form name="countdownform"><input class="Chead" size="22" name="countdowninput" readonly="readonly" /></form></td></tr>';
    }
              echo '</table>';
    ?>
        <script type="text/javascript">
          // Ziel-Datum in MEZ
          var jahr=2222, monat=3, tag=<?php echo $row->tag; ?>, stunde=<?php echo $row->stu; ?>, minute=<?php echo $row->min; ?>, sekunde=<?php echo $row->sek; ?>;
          var zielDatum=new Date(jahr,monat-1,tag,stunde,minute,sekunde);
    
          function countdown() {
            startDatum=new Date(); // Aktuelles Datum
    
            // Countdown berechnen und anzeigen, bis Ziel-Datum erreicht ist
            if(startDatum<=zielDatum)  {
    
              var jahre=0, monate=0, tage=0, stunden=0, minuten=0, sekunden=0;
    
              /* Allgemeines Vorgehen:
               * Zunächst werden die vollen Jahre gezählt
               * und anschließend der Start- und Ziel-Monat auf den jeweiligen 1. gesetzt.
               * Nun werden erst die vollen Monate vom 1. zum 1. des Start- bzw. Ziel-Monats
               * berechnet und danach die tatsächlichen Monatstage wieder mit einbezogen.
               * Dieses Vorgehen vermeidet Probleme mit den verschiedenen Monatslängen.
               * Was übrig bleibt, wird in Tagen, Stunden, Minuten und Sekunden ausgedrückt.*/
    
              // Jahre
              if(startDatum<zielDatum) {
                while(startDatum<zielDatum) {
                  if(startDatum.setFullYear(startDatum.getFullYear()+1)<=zielDatum) jahre++;
    
                }
    
                startDatum.setFullYear(startDatum.getFullYear()-1);
              }
    
              // Restliche Tage zum Monatsende ermitteln
              var restTage=0;
              var m=startDatum.getMonth();
              if(m==1-1|| m==3-1||m==5-1||m==7-1||m==8-1||m==10-1||m==12-1)
                  restTage=31-startDatum.getDate();
              else if(m==4-1|| m==6-1||m==9-1||m==11-1) restTage=30-startDatum.getDate();
              else if(m==2-1) {
                if(startDatum.getFullYear()% 4==0 && (startDatum.getFullYear()% 100!=0
                    || startDatum.getFullYear()% 400==0))
                        restTage=29-startDatum.getDate(); // Schaltjahr
                else restTage=28-startDatum.getDate();
              }
    
              // Start- und Ziel-Tag merken und auf 1 setzen
              var startTag=startDatum.getDate();
              var zielTag=zielDatum.getDate();
              startDatum.setDate(1);
              zielDatum.setDate(1);
    
              // Monate
              if(startDatum<zielDatum) {
                while(startDatum<zielDatum) {
                  if(startDatum.setMonth(startDatum.getMonth()+1)<=zielDatum) monate++;
                }
                startDatum.setMonth(startDatum.getMonth()-1);
              }
    
              // Tatsächlichen Start- und Ziel-Tag berücksichtigen
              if(startDatum.getMonth()==zielDatum.getMonth()) {
                if(startTag<=zielTag) startDatum.setDate(startTag);
                else {
                  monate--;
                  tage=restTage+1;
                }
              }
              else {
                startDatum.setMonth(startDatum.getMonth()+1);
                if(startTag>=zielTag) tage=restTage+1;
                else {
                  monate++;
                  startDatum.setDate(startTag);
                }
              }
              zielDatum.setDate(zielTag);
    
              // Tage
              restTage=Math.floor((zielDatum-startDatum)/(24*60*60*1000));
              startDatum.setTime(startDatum.getTime()+restTage*24*60*60*1000);
    
              tage+=restTage;
    
    
              // Stunden
              stunden=Math.floor((zielDatum-startDatum)/(60*60*1000));
              startDatum.setTime(startDatum.getTime()+stunden*60*60*1000);
    
              // Minuten
              minuten=Math.floor((zielDatum-startDatum)/(60*1000));
              startDatum.setTime(startDatum.getTime()+minuten*60*1000);
    
              // Sekunden
              sekunden=Math.floor((zielDatum-startDatum)/1000);
    
              // Anzeige formatieren
              
             
              (tage!=1)?tage=tage+" T | ":tage=tage+" Tag,  ";
              (stunden!=1)?stunden=stunden+" ST | ":stunden=stunden+" St  ";          
              (minuten!=1)?minuten=minuten+" M | ":minuten=minuten+" Minute  und  ";
              if(sekunden<10) sekunden="0"+sekunden;
              (sekunden!=1)?sekunden=sekunden+" S":sekunden=sekunden+" Sekunde";
    
    
              document.countdownform.countdowninput.value=
                  tage+stunden+minuten+sekunden;
    
    
              setTimeout("countdown()",200);
            }
            // Anderenfalls alles auf Null setzen
            else document.countdownform.countdowninput.value=
                "0 Jahre,  0 Monate,  0 Tage,  0 Stunden,  0 Minuten  und  00 Sekunden";
         }
         
         function addEvent(elm, evType, fn, useCapture)
        // addEvent and removeEvent
        // cross-browser event handling for IE5+,  NS6 and Mozilla
        // By Scott Andrew
        {
         if (elm.addEventListener){
           elm.addEventListener(evType, fn, useCapture);
           return true;
         } else if (elm.attachEvent){
           var r = elm.attachEvent("on"+evType, fn);
           return r;
         } else {
           alert("Handler could not be removed");
         }
        }
         
         addEvent(window, "load", countdown);
        </script>
    externer Link
    xfire:jasonvorheees
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    justinleebrain Mitglied
    Registriert seit
    17.07.2008
    Beiträge
    82
    Beitragswertungen
    3 Beitragspunkte
    Kann mir da keiner helfen?

    Fehler in der box ist:

    MySQL Error:
    1054 : Unknown column 'gegner' in 'field list'
    in Query:
    SELECT DATE_FORMAT(datime,'%d.%m.%y - %H:%i') as time,tag,`mod`,gegner, id, game FROM ic1_wars WHERE status = 2 AND datime >= '2010-11-17' ORDER BY datime,id DESC LIMIT 1

    Debug backtrace:
    @ mysql.php:32 -- debug_bt()
    @ mysql.php:50 -- db_check_error(...)
    @ nextwarscounter.php:15 -- db_query(...)
    @ design.php:332 -- require_once(...)
    @ design.php:174 -- design->get_boxcontent(...)
    @ design.php:71 -- design->replace_boxes(...)
    @ self.php:68 -- design->design(...)
    @ index.php:51 -- require_once(...)
    externer Link
    xfire:jasonvorheees
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.634
    Beitragswertungen
    1193 Beitragspunkte
    Ich vermute Du hast Adv.Wars und das Modul ist für das Standard-War-System! Da die Gegnerinfos ausgelagert wurden. Nimm einfach mal gegner raus und rufe die Opponent - Daten getrennt auf!
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    justinleebrain Mitglied
    Registriert seit
    17.07.2008
    Beiträge
    82
    Beitragswertungen
    3 Beitragspunkte
    Lordi Lordi Lordi^^

    du schreibst für mich in Rätseln grins.
    Ich hab jedes wort gegner in Opponent geändert usw. ich krieg nen Fön grins.Gehts vllt ein wenig genauer für son Bob wie mich^^
    externer Link
    xfire:jasonvorheees
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.634
    Beitragswertungen
    1193 Beitragspunkte
    lächeln

    Bei Adv.Wars gibt es in der Tabelle wars kein gegner mehr, sondern nur noch eine ID des Gegners, welche auf die Tabelle opponents oder so verweist! Wenn ich heute Abend daheim bin, schau ich es mir nochmal an!
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    justinleebrain Mitglied
    Registriert seit
    17.07.2008
    Beiträge
    82
    Beitragswertungen
    3 Beitragspunkte
    Aha grins,ok wenn du das sagst wirds so sein ich danke dir Grossmeister Lord.Ohne dich wäre meine Page nix!

    Mfg Jason
    externer Link
    xfire:jasonvorheees
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.634
    Beitragswertungen
    1193 Beitragspunkte
    Probier es mal, habe es nicht getestet!

    <?php
    /* 
    ************************************************************************
    * Copyright (c) honklords.de, zocker-eppingen.de, mairu, fhag-gaming.de*
    ************************************************************************
    */
    defined ('main') or die ( 'no direct access' );
     
    $list = "1"; # anzahl der Nextwars die aufgelistet werden sollen
     
    echo '<table width="100%" border="0" cellpadding="2" cellspacing="0">';
     
    $akttime = date('Y-m-d');
     
    $erg = @db_query("SELECT DATE_FORMAT(datime,'%d.%m.%y - %H:%i') as time,`mod`,oid, id, game FROM prefix_wars WHERE status = 2 AND datime >= '".$akttime."' ORDER BY datime,id DESC LIMIT $list");
    
    if ( @db_num_rows($erg) == 0 ) {
    } else {
        while ($row = @db_fetch_object($erg) ) {
    	$r1 = @db_fetch_object(db_query('SELECT tag,name FROM prefix_opponents WHERE oid = "'.$row->oid.'"'),0);
        $mod = '';
        $row2['reg']='';
        $hat = 'haben';
            $row->tag = ( empty($r1->tag) ? $r1->name : $r1->tag );
            $mod = explode('on',$row->mod);
            $result = db_query("SELECT COUNT(*)as reg  FROM prefix_warmember WHERE wid = ".$row->id." AND aktion = 1") ;
            $row2 = db_fetch_assoc($result);
            if($row2['reg']<=1){$hat = 'hat';}
            echo '<tr><td>'.get_wargameimg($row->game).'</td></tr><tr>';
            echo '<td><a class="nextwars" href="index.php?wars-more-'.$row->id.'">';
            echo $row->time.' - '.$row->tag.'</a></td></tr><tr><td>Es '.$hat.' sich '.$row2['reg'].' von '.$mod['0'].' angemeldet.</td></tr>';
        }
    }
     
    //Nextwarcounter
        
    $timej = date('Y-m-d H:i:s');
     
     
    $erg = @db_query("SELECT DATE_FORMAT(datime,'%d.%m.%y - %H:%i') as wartime, DATE_FORMAT(datime,'%d') as tag,  DATE_FORMAT(datime,'%s') as sek, DATE_FORMAT(datime,'%i') as min, DATE_FORMAT(datime,'%H') as stu, datime, status, id FROM prefix_wars WHERE status = '2' and datime >= '".$timej."' order by datime ASC limit 1");
      if ( mysql_num_rows($erg) == 0 ) {
          echo '<tr><td align="center">kein War geplant</td></tr>';
        } else {
          $row = mysql_fetch_object($erg);
              echo '<tr><td align="center"><u>Zeit bis zum Warbeginn:</u></td></tr>';
              echo '<tr><td><form name="countdownform"><input class="Chead" size="22" name="countdowninput" readonly="readonly" /></form></td></tr>';
    }
              echo '</table>';
    ?>
        <script type="text/javascript">
          // Ziel-Datum in MEZ
          var jahr=2222, monat=3, tag=<?php echo $row->tag; ?>, stunde=<?php echo $row->stu; ?>, minute=<?php echo $row->min; ?>, sekunde=<?php echo $row->sek; ?>;
          var zielDatum=new Date(jahr,monat-1,tag,stunde,minute,sekunde);
     
          function countdown() {
            startDatum=new Date(); // Aktuelles Datum
     
            // Countdown berechnen und anzeigen, bis Ziel-Datum erreicht ist
            if(startDatum<=zielDatum)  {
     
              var jahre=0, monate=0, tage=0, stunden=0, minuten=0, sekunden=0;
     
              /* Allgemeines Vorgehen:
               * Zunächst werden die vollen Jahre gezählt
               * und anschließend der Start- und Ziel-Monat auf den jeweiligen 1. gesetzt.
               * Nun werden erst die vollen Monate vom 1. zum 1. des Start- bzw. Ziel-Monats
               * berechnet und danach die tatsächlichen Monatstage wieder mit einbezogen.
               * Dieses Vorgehen vermeidet Probleme mit den verschiedenen Monatslängen.
               * Was übrig bleibt, wird in Tagen, Stunden, Minuten und Sekunden ausgedrückt.*/
     
              // Jahre
              if(startDatum<zielDatum) {
                while(startDatum<zielDatum) {
                  if(startDatum.setFullYear(startDatum.getFullYear()+1)<=zielDatum) jahre++;
     
                }
     
                startDatum.setFullYear(startDatum.getFullYear()-1);
              }
     
              // Restliche Tage zum Monatsende ermitteln
              var restTage=0;
              var m=startDatum.getMonth();
              if(m==1-1|| m==3-1||m==5-1||m==7-1||m==8-1||m==10-1||m==12-1)
                  restTage=31-startDatum.getDate();
              else if(m==4-1|| m==6-1||m==9-1||m==11-1) restTage=30-startDatum.getDate();
              else if(m==2-1) {
                if(startDatum.getFullYear()% 4==0 && (startDatum.getFullYear()% 100!=0
                    || startDatum.getFullYear()% 400==0))
                        restTage=29-startDatum.getDate(); // Schaltjahr
                else restTage=28-startDatum.getDate();
              }
     
              // Start- und Ziel-Tag merken und auf 1 setzen
              var startTag=startDatum.getDate();
              var zielTag=zielDatum.getDate();
              startDatum.setDate(1);
              zielDatum.setDate(1);
     
              // Monate
              if(startDatum<zielDatum) {
                while(startDatum<zielDatum) {
                  if(startDatum.setMonth(startDatum.getMonth()+1)<=zielDatum) monate++;
                }
                startDatum.setMonth(startDatum.getMonth()-1);
              }
     
              // Tatsächlichen Start- und Ziel-Tag berücksichtigen
              if(startDatum.getMonth()==zielDatum.getMonth()) {
                if(startTag<=zielTag) startDatum.setDate(startTag);
                else {
                  monate--;
                  tage=restTage+1;
                }
              }
              else {
                startDatum.setMonth(startDatum.getMonth()+1);
                if(startTag>=zielTag) tage=restTage+1;
                else {
                  monate++;
                  startDatum.setDate(startTag);
                }
              }
              zielDatum.setDate(zielTag);
     
              // Tage
              restTage=Math.floor((zielDatum-startDatum)/(24*60*60*1000));
              startDatum.setTime(startDatum.getTime()+restTage*24*60*60*1000);
     
              tage+=restTage;
     
     
              // Stunden
              stunden=Math.floor((zielDatum-startDatum)/(60*60*1000));
              startDatum.setTime(startDatum.getTime()+stunden*60*60*1000);
     
              // Minuten
              minuten=Math.floor((zielDatum-startDatum)/(60*1000));
              startDatum.setTime(startDatum.getTime()+minuten*60*1000);
     
              // Sekunden
              sekunden=Math.floor((zielDatum-startDatum)/1000);
     
              // Anzeige formatieren
              
             
              (tage!=1)?tage=tage+" T | ":tage=tage+" Tag,  ";
              (stunden!=1)?stunden=stunden+" ST | ":stunden=stunden+" St  ";          
              (minuten!=1)?minuten=minuten+" M | ":minuten=minuten+" Minute  und  ";
              if(sekunden<10) sekunden="0"+sekunden;
              (sekunden!=1)?sekunden=sekunden+" S":sekunden=sekunden+" Sekunde";
     
     
              document.countdownform.countdowninput.value=
                  tage+stunden+minuten+sekunden;
     
     
              setTimeout("countdown()",200);
            }
            // Anderenfalls alles auf Null setzen
            else document.countdownform.countdowninput.value=
                "0 Jahre,  0 Monate,  0 Tage,  0 Stunden,  0 Minuten  und  00 Sekunden";
         }
         
         function addEvent(elm, evType, fn, useCapture)
        // addEvent and removeEvent
        // cross-browser event handling for IE5+,  NS6 and Mozilla
        // By Scott Andrew
        {
         if (elm.addEventListener){
           elm.addEventListener(evType, fn, useCapture);
           return true;
         } else if (elm.attachEvent){
           var r = elm.attachEvent("on"+evType, fn);
           return r;
         } else {
           alert("Handler could not be removed");
         }
        }
         
         addEvent(window, "load", countdown);
        </script>
    rules :: doku :: faq :: linkus
    1 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    justinleebrain Mitglied
    Registriert seit
    17.07.2008
    Beiträge
    82
    Beitragswertungen
    3 Beitragspunkte
    Dub ist unglaublich Coooool Lord vielen Dank!!!!!!!! Hat geklappt und nun siehts wieder supi auf meiner Page aus^^
    externer Link
    xfire:jasonvorheees
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Fehlersuche und Probleme

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten