kleiner Gedankenanstoß nötig

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • kleiner Gedankenanstoß nötig

    Hallo

    Ist erst mein 2. Beitrag hier, also bitte habt Nachsicht mit mir, falls ich was falsches mache.

    Ich habe vor folgende Webseite zu programmieren:
    Ich hab eine MySQL Datenbank erzeugt mit den Feldern
    id
    name
    wertung
    w_anzahl (=wertungsanzahl)

    ich möchte praktisch auf der Seite Bilder abspeichern (vorerst ohne Uploadfunktion), diese darstellen und bewerten lassen. Anfangs soll man auch ruhig für das selbe Bild mehrmals voten dürfen - das verhindern möchte ich erst später implementieren, wenn alles läuft.

    die Bilder speicher ich manuell unter ihrem id namen ab, also bei id=1 heißt das bild 1.jpg, bei id=2 : 2.jpg und so weiter - in der Hoffnung, daß dann der Aufruf einfacher ist...

    Angenommen die Datenbank ist mit 10 Datensätzen gefüllt, dann möchte ich, daß zufällig eine der 10 ids ausgewählt wird.([color=red]kleiner tip wär hier nicht schlecht- geht das mit mt_rand() ?[/color])

    dann soll eine (endlos)schleife aufgerufen werden und in ihr soll folgendes passieren:

    - Bild entsprechend der id laden und darstellen ([color=red]weiß ich noch nicht so genau, wie ich das machen soll[/color])
    - aus der datenbank die aktuelle bewertung auslesen und darstellen ([color=blue]das bekomm ich hin[/color])
    - mit Hilfe von Radiobuttons neue Bewertung einlesen, neuen Mittelwert aller Votings bilden und datenbank updaten ([color=red]bei den Radiobuttons tu ich mich irgendwie schwer - siehe Code unten. Der rest ist machbar[/color])
    - index um eins erhöhen oder wenn dadurch der index auf >10 steigt, dann index = 1 festlegen ([color=blue]kein thema[/color])


    tja und folgendes hab ich schon bewerkstelligt
    index.php3
    PHP-Code:
    <html>
    <body>

    <p align="center"><img src="1.jpg"></p>

    <?
    // Datenbank öffnen
    $db = @mysql_connect('localhost', 'root', '') or die ("Es konnte keine Verbindung zur Datenbank hergestellt werden");
    mysql_select_db("ba_students",$db);


    // 2. SQL Anfrage ausführen
    $index = 1; //später variabel 
    $sql    = "SELECT * FROM auswertung WHERE id='$index'";

    $result = mysql_query ($sql);



    // Wieviele Datensätze in der Zeile mit id $index wurden gefunden?

    $rows = mysql_num_rows($result);


    // 3. Daten auslesen

    for ($i=0;$i<$rows;$i++)                 // Die Ergebnisdatensätze werden in einer Schleife abgeholt

      {
      $data = mysql_fetch_object ($result);
      }

    print "<center>Für $data->name wurde bisher $data->w_anzahl mal gevotet und sie liegt derzeit bei $data->wertung Punkten.</center>";


    // Eingabeformular
    echo "<form action=index.php3 method=POST>\n";
    echo "<center><input type=radio name=newvote value=1 > 1&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp";
    echo "<input type=radio name=newvote value=2 > 2&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp";
    echo "<input type=radio name=newvote value=3 > 3&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp";
    echo "<input type=radio name=newvote value=4 > 4&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp";
    echo "<input type=radio name=newvote value=5 > 5&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp";
    echo "<input type=radio name=newvote value=6 > 6";
    echo "<br><br><input type=submit value=\"jetzt abstimmen\"></center>\n";
    das Problem mit dem richtigen übernehmen der Votings hab ich hier:

    PHP-Code:
    if (isset($newvote)) {
        
    $neue_wertung = ($data->wertung $data->w_anzahl +$newvote)/($data->w_anzahl 1);
        
    $neue_anzahl $data->w_anzahl +1;

        
    mysql_query("UPDATE auswertung SET wertung = '$neue_wertung', w_anzahl = '$neue_anzahl' WHERE id = '1'");
        } 
    sobald $newvote einmal gesetzt ist, wird auch ein Voting hinzugerechnet, wenn ich die Seite nur aktualisiere


    ich weiß, daß das jetzt ne Menge Fragen/Probleme waren, aber ich hoffe dennoch, daß mir jemand helfen kann und es am besten auch noch so erklärt, daß ich als Einsteiger damit was anfangen kann. Danke
    Zuletzt geändert von Boneman; 30.04.2003, 15:28.
Lädt...
X