Hallo Leute
ich weis das es ein doofes Konstrukt ist aber anhand der seite lässt es sich nicht anders machen.
es handelt sich um ein Bildervoting mit IMMER 10 Bildern.es sind einige Fehler in der seite drin die der vorhergehende Programmierer nicht beachtet
hat.Ich soll es nun flicken.
die index.php wird aufgerufen von der toplist.php und die id übergeben mit welchem bild er auf die index.php kommt.Daraufhin werden die anderen noch fehlenden Bilder angezeigt und das Voting bei 10 beendet.Solange man sich dran hält!! Aber wehe nicht
Fehler eins!
wenn man beim voten die Seite bei bild 5 schliesst und neu auf die toplist geht und auf ein bild klickt kann man das oder die gleichen Bilder nochmal bewerten.
Fehler zwei
drückt man die ins Taste oder zurück dann kann man das vorherige Bild auch wieder bewerten da durch
jedesmal die Votes gleich in die db geschrieben werden.
Ich habe mir jetzt ein array gebaut was sich auch wenn die seite wie in Fehler 1 geschlossen wird die votes zur id (bild_id) die abgegeben werden merkt.
Er kann zwar immer noch das Bild z.B Bild 1 wieder bewerten aber nun kommt mein Hilfegesuch
Wie kann ich nur den ersten angegebenen vote zur Bild_id aus dem array ermitteln( die anderen praktisch ignorieren damit nur 1 vote gezählt wird und
gleichzeitig die doppelten einträge löschen damit ich am ende nur 10 bild_ids und die Votes dazu in dem Array stehen habe, denn es soll ja noch Leute geben die sich daran halten was sie machen sollen:-)
Es soll zum Schluss im array so aussehen:
[0][1] sind die Bild_id 1 und der vote dazu
[17][18] sind die bild_id 10 und der vote dazu
ich weis das es ein doofes Konstrukt ist aber anhand der seite lässt es sich nicht anders machen.
es handelt sich um ein Bildervoting mit IMMER 10 Bildern.es sind einige Fehler in der seite drin die der vorhergehende Programmierer nicht beachtet
hat.Ich soll es nun flicken.
die index.php wird aufgerufen von der toplist.php und die id übergeben mit welchem bild er auf die index.php kommt.Daraufhin werden die anderen noch fehlenden Bilder angezeigt und das Voting bei 10 beendet.Solange man sich dran hält!! Aber wehe nicht
Fehler eins!
wenn man beim voten die Seite bei bild 5 schliesst und neu auf die toplist geht und auf ein bild klickt kann man das oder die gleichen Bilder nochmal bewerten.
Fehler zwei
drückt man die ins Taste oder zurück dann kann man das vorherige Bild auch wieder bewerten da durch
PHP-Code:
if($_POST["vote"])
{
mysql_query("UPDATE ".$db_table_pictures." SET points=points+".$_POST["vote"].",votes=votes+1 WHERE id=".$_POST["id"].";");
}
Ich habe mir jetzt ein array gebaut was sich auch wenn die seite wie in Fehler 1 geschlossen wird die votes zur id (bild_id) die abgegeben werden merkt.
PHP-Code:
$_SESSION['minimo'][]=$_POST['id'];
$_SESSION['minimo'][]=$_POST['vote'];
print_r($_SESSION['minimo']);
echo "<br>";
print_r($_SESSION['minimo'][0]);
echo "<br>";
print_r($_SESSION['minimo'][1]);
echo "<br>";
print_r($_SESSION['minimo'][2]);
echo "<br>";
print_r($_SESSION['minimo'][3]);
echo "<br>";
print_r($_SESSION['minimo'][4]);
echo "<br>";
print_r($_SESSION['minimo'][5]);
echo "<br>";
print_r($_SESSION['minimo'][6]);
echo "<br>";
print_r($_SESSION['minimo'][7]);
echo "<br>";
print_r($_SESSION['minimo'][8]);
echo "<br>";
print_r($_SESSION['minimo'][9]);
echo "<br>";
print_r($_SESSION['minimo'][10]);
Wie kann ich nur den ersten angegebenen vote zur Bild_id aus dem array ermitteln( die anderen praktisch ignorieren damit nur 1 vote gezählt wird und
gleichzeitig die doppelten einträge löschen damit ich am ende nur 10 bild_ids und die Votes dazu in dem Array stehen habe, denn es soll ja noch Leute geben die sich daran halten was sie machen sollen:-)
Es soll zum Schluss im array so aussehen:
[0][1] sind die Bild_id 1 und der vote dazu
[17][18] sind die bild_id 10 und der vote dazu
Kommentar