In einzelne MySQL Zelle mehrfach einschreiben/auslesen

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

  • In einzelne MySQL Zelle mehrfach einschreiben/auslesen

    Hallo liebe resourcies

    Folgendes Anliegen:

    Ich möchte mein Votingscript erweitern, da man zur Zeit immer nur für eine Sache Stimmen kann. Ich würde gerne mehrere Einträge speichern.

    Beispiel: Ich bin auf einer Seite mit einem Button, drück ihn, und es wird vote 1 in die spalte vote eingetragen. Später bin ich auf einer anderen Seite, und dort drück ich wieder einen Button, diesmal hängt er aber den Wert vote 3 mit dran. Jetzt muss aber auch noch erkannt werden, dass sobald ich auf die Seite mit dem vote1 oder vote2 komme, diese auch erkannt werden und der Button durch einen 'schong gevotet' ersetzt wird.

    Das Hauptproblem sehe ich natürlich im einschreiben sowie im einzelnen auslesen.

    mein bisheriger code:

    PHP-Code:
    <?php 
          
    if (isset($_SESSION['member']) 
          || isset(
    $_SESSION['dj']) 
          || isset(
    $_SESSION['artist'])) {
         try {
             
    $connect = new MySQLi($db_server$db_user$db_password$db_databank);
             
    $sql 'SELECT * FROM bla WHERE UID="' $_SESSION['UID'] . '"';
             
    $ergebnis $connect->query($sql);
       while (
    $zeile $ergebnis->fetch_object()) {
             
    $remix sprintf($zeile->contest1);}
     } catch (
    Exception $e) {
        echo 
    'Fehler: ' htmlspecialchars($e->getMessage());}
          
    // $_SESSION['vote'] wird in der seite manuell von mir gesetzt
          
    if ($_SESSION['vote'] == $remix){
        echo 
    'you already have voted for this remix.';}
        else {
        echo 
    '<form action="' $_SERVER["PHP_SELF"] . '" method="post">
             <input type="submit" name="VOTE" value="VOTE"/></form>'
    ;}}
        else { 
        echo 
    'please register <a href="bla.php">here</a> to vote for a remix';}
          if (isset(
    $_POST['VOTE'])) {
             
    $connect = new MySQLi($db_server$db_user$db_password$db_databank);
             
    $remixdaten 'UPDATE bla SET contest1 = 
             "' 
    $_SESSION['vote'] . '" WHERE UID="' $_SESSION['UID'] . '"';
             
    $update mysqli_query($connect$remixdaten);
        echo 
    'you have successfully voted for the "' $_SESSION['vote'] . '"';}
        else {}    
          
    ?>
    könnte mir vielleicht jemand helfen?

  • #2
    Hallo,

    mal gucken, ob ich das richtig verstanden habe und ob ich Dir eine Hilfe geben kann.

    Ich würde das folgendermaßen angehen.
    Dem User wenn er auf deine Site kommt eine Session verpassen. Sofern sich angemeldet werden muss (um Auswertungen zu erstellten z.B.) die Login-Daten auch in der Session speichern.
    Eine Tabelle mit entsprechend vielen Spalten wie es Votes gibt => Spalte1 == Vote1, Spalte2 == Vote2 usw, dann noch eine Spalte für den User und eine für die Session-ID. Wenn Du auch noch wissen willst, wann er auf der Site war, noch ne Spalte für Datum und wegen mir Uhrzeit.

    Wird ein Vote gesetzt, diesen vorm schreiben in die DB prüfen ob er schon gesetzt wurde. Wenn ja, Meldung ausgeben, dass dieser Vote schon gemacht wurde, ansonsten den Eintrag in die DB schreiben.


    Gruß

    Michael
    Gruß

    Michael

    Kommentar

    Lädt...
    X