• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Bewertung trägt falsche Werte ein ...

FebsDeluxe

Mitglied
Hey Leute,
auf schoolquotes.de wird neuerdings bei meinem Bewertungssystem nurnoch "/index.php?id=" in die mySQL Datenbank eingetragen, obwohl eigendlich immer noch die entsprechende Zahl hinter dem "=" stand ...

Hier mal die codes:

addrating.php
PHP:
<?php

include "./config.php";
$ser=$_SERVER['HTTP_HOST'];
$ref=$_SERVER['HTTP_REFERER'];
$host= parse_url($ref);
$rateval = $_GET['rating'];
$urlvorarbeit=$_GET['id'];
$url='/index.php?id='.$urlvorarbeit.'';
$ipadd = $_SERVER['REMOTE_ADDR']; 
$dat = date_default_timezone_set('UTC');
$link = mysql_connect($hostname, $username,$password);
$dbcon = mysql_select_db($dbname,$link);

$res  = mysql_query("select url from $tablename where ip='$ipadd' && url='$url'");
$res1  = mysql_query("select * from $tablename where url='$url'");
$dd = mysql_fetch_array($res,MYSQL_BOTH);
$val = $dd[0];
$num_rows = mysql_num_rows($res1);

if(!$val && $ser == $host[host] AND $rateval>0)
{
    $result = mysql_query("insert into $tablename values(NULL,'$ipadd','$url','$dat','$rateval')",$link);
    echo ($num_rows+1)."#";
    echo "<span id=final>";
    for($i=1;$i<=5;$i++)
    {
      if($rateval>=1)
      {
            echo "<img src=\"./HSRS/images/star2.gif\" align=absmiddle alt='star rating'>";
                    $rateval=$rateval-1;
        }
        else if($rateval>=0.5)
        {
            echo "<img src=\"./HSRS/images/star3.gif\" align=absmiddle alt='star rating'>";
           $rateval=$rateval-1;
        }
         else if ($rateval<0.5 && $rateval>0)
        {
            echo "<img src=\"./HSRS/images/star1.gif\" align=absmiddle alt='star rating'>";
            $rateval=$rateval-1;
        }
        else if($rateval<=0)
        {
            echo "<img src=\"./HSRS/images/star1.gif\" align=absmiddle alt='star rating'>";
        }
    }
   echo "</span>&nbsp;&nbsp;";         
}
else
{
    echo "not added";
}
?>

addcode.php
PHP:
<!-- Welcome to the scripts database of HIOX INDIA      -->

<!-- This tool is developed and a copyright             -->

<!-- product of HIOX INDIA.                    -->

<!-- For more information visit http://www.hscripts.com -->



<link href="<?php echo $hm2;?>/rating.css" rel="stylesheet" type="text/css" />

<script type='text/javascript' src="<?php echo $hm2;?>/jquery.js"></script>


<script type='text/javascript'>

jQuery(document).ready(function(){

jQuery('.star a').hover(function(){

      var uid = this.id;

      switch(uid){

        case '1':

          jQuery('#rateit').css({visibility: "visible", color: "black","font-size": "12", "font-family":"Arial"});

          jQuery('#rateit').html('&nbsp;Ungen&uuml;gend');

          break;

        case '2':

          jQuery('#rateit').css({visibility: "visible", color: "black","font-size": "12", "font-family":"Arial"});

          jQuery('#rateit').html('&nbsp;Mangelhaft');

          break;

        case '3':

          jQuery('#rateit').css({visibility: "visible", color: "black","font-size": "12", "font-family":"Arial"});

          jQuery('#rateit').html('&nbsp;Ausreichend');

          break;

        case '4':

          jQuery('#rateit').css({visibility: "visible", color: "black","font-size": "12", "font-family":"Arial"});

          jQuery('#rateit').html('&nbsp;Befriedigend');

          break;
        case '5':

          jQuery('#rateit').css({visibility: "visible", color: "black","font-size": "12", "font-family":"Arial"});

          jQuery('#rateit').html('&nbsp;Gut');
          break;
        case '6':

          jQuery('#rateit').css({visibility: "visible", color: "black","font-size": "12", "font-family":"Arial"});

          jQuery('#rateit').html('&nbsp;Sehr&nbsp;Gut');
          break;

                         
    }

    });

    
   jQuery('.star a').mouseout(function() {

     var uid = this.id;

     jQuery('#rateit').css({visibility: "hidden"});

     for(var x=1;x<=uid;x++){

        jQuery('#star'+x).css('background-image', 'url("./HSRS/images/star.gif")');

     }

   });


  jQuery('a').click(function(){

        var val = jQuery(this).text();

        jQuery.get("./HSRS/addrating.php","rating="+val,function(result){

          if(result != "not added"){

        var sp = result.split("#");

            var ff = "[ "+sp[0]+" ]";

            var dispstars = sp[1];

            ("#final").html(dispstars);

            ("#strimg").html(ff);

            ('#res').css({opacity: 0.0, visibility: "visible"});

          }

else if(result == "not added"){

            var already = ("Danke! Dein Vote wurde bereits eingetragen ...");

            jQuery('#res').css({opacity: 0.0, visibility: "visible"});

            jQuery("#already").css({visibility: "visible", "font-size":"12px",color: "red","padding-left":"15px"});

            jQuery("#already").fadeIn(100);

            jQuery("#already").html(already);

            jQuery("#already").fadeOut(5000);

          }
         
       });

    });


});

  
</script>


<?php

  $start = $_GET['begin'];

  if($start == "")

    $start = 0;

  $urlvorarbeit = $_GET['id'];
  $url='/index.php?id=' . $urlvorarbeit;
  include "$hm/config.php";


  $link = mysql_connect($hostname, $username,$password);

  if($link)
  {
    $dbcon = mysql_select_db($dbname,$link);

  }

  $qur1 = "select count(*) as dd, avg(rateval) as xx from $tablename where url='$url' group by url";

    $result1 = mysql_query($qur1,$link);

  if($line = @mysql_fetch_array($result1, MYSQL_ASSOC))
  {

    $count = $line['dd'];

    $rateval = $line['xx'];

    $durchschnitt = round(7-$rateval,1);
  }


?>



    <?php
      echo "<div style='float: right; margin: 0px;' class='fb-like' data-href=$commis data-send='false' data-layout='button_count' data-width='90' data-show-faces='false'></div>";
    ?>

<table cellpadding=0 cellspacing=0 border=0 style="font-family: arial, verdana, san-serif; font-size: 13px;" valign="top">

   <tr valign="top">

      <td colspan=2 valign="top">

             <?php

             echo "<span id=final>";

             for($i=1;$i<=6;$i++)

                     {

                       if($rateval>=1)

                    {

                   echo "<img src=\"$hm2/images/star2.gif\" align=absmiddle alt='star rating'>";

                           $rateval=$rateval-1;

                    }

                    else if($rateval>=0.5)

                    {

                    echo "<img src=\"$hm2/images/star3.gif\" align=absmiddle alt='star rating'>";

                   $rateval=$rateval-1;

                    }

                     else if ($rateval<0.5 && $rateval>0)

                    {

                   echo "<img src=\"$hm2/images/star1.gif\" align=absmiddle alt='star rating'>";

                   $rateval=$rateval-1;

                    }

                    else if($rateval<=0)

                    {

                   echo "<img src=\"$hm2/images/star1.gif\" align=absmiddle alt='star rating'>";

                    }

                }

                echo "</span>&nbsp;";

              echo "<span id='strimg'>[Note:&nbsp;$durchschnitt&nbsp;]&nbsp;</span>";
          echo "<img src='http://www.schoolquotes.de/pics/durchschnitt.jpg' width='10px'>";
                  echo "<br>";
          echo "$count mal bewertet.";
               
    ?>

<br><br>
</td>

</tr>

<tr>
<td>  
<img src="pics/younow.jpg" width="10px"></td><td>
<div id="rate2" class="rating">

<div halign="left" id="star1" class="star"><a id="1">1</a></div>
<div halign="left" id="star2" class="star"><a id="2">2</a></div>
<div halign="left" id="star3" class="star"><a id="3">3</a></div>
<div halign="left" id="star4" class="star"><a id="4">4</a></div>
<div halign="left" id="star5" class="star"><a id="5">5</a></div>
<div halign="left" id="star6" class="star"><a id="6">6</a></div>

<input type=hidden id="rating">
<span id="rateit"></span>

</div>

</td>
</tr>

<tr>
<td colspan=2>
<span id='already' style='visibility: hidden; margin-top:20px;'></span>
</td>
</tr>


</table>

<div align=left>
<a style="margin-left: 150px; color: #efefef; font-size: 10px; text-decoration: none; " id=dum href="http://www.hscripts.com">&copy;h</a>
</div>
 
Werbung:
Hey,
Ich kann dir nicht sagen wo es genau dran liegt aber guck mal hier:

PHP:
$start = $_GET['begin'];

if($start == "")
  $start = 0;

  $urlvorarbeit = $_GET['id'];
  $url='/index.php?id=' . $urlvorarbeit;
  include "$hm/config.php";

Lass dir einfach mal $url ausgeben und guck ob der Fehler da schon existiert.
 
Richtig debuggen

1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
2. Man schreibt an den Anfang des Scriptes die Zeile: error_reporting(-1);
3. Man verwendet ini_set('display_errors', true); damit die Fehler auch angezeigt werden.
4. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
5. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde. Wichtig bei MySQL Fehlern (...not a valid MySQL result resource...): mysqli_error() verwenden oder Abfrage ausgeben und zb mit phpmyadmin testen.
6. Schritt 5 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
7. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
8. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
9. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.
 
Werbung:
Du musst da suchen, wo der falsche Eintrag gemacht wird. Also Einfach mal die SQL-Abfrage ausgeben und gucken ob der Fehler da zu sehen ist. Falls ja, musst du dich zurückarbeiten, bis du die Stelle findest an der der Fehler erzeugt wird.
 
Werbung:
Wenn ich auf deiner Seite ein Zitat bewerten will, wird auch nur addrating.php?rating=3 aufgerufen. Eine id wird dort nicht übergeben.
Im Übrigen kommt dann auch ein Parse-Error zurück (unexpected '$res' (T_VARIABLE) on line 15). Da gibt es also noch andere Sachen zu tun.
 
Werbung:
Die $url die ausgegeben wurde war nur die von addcode.php, bei addrating.php passiert gar nichts bei dem echo befehl ...

Hab zwar selbst keine Fehlermeldung bekommen, habe den Error aber korrigiert ;D
 
Zurück
Oben