sql >> Databasteknik >  >> RDS >> Mysql

Hur lägger jag till en röst i min databas i ett formulär?

Får du felmeddelanden?

Det låter som att du försöker visa resultatet av en omröstning (efter att användaren har skickat sin egen röst), men du har problem med att hämta resultatet av omröstningen. Eftersom omröstningsresultaten måste finnas kvar över användare och sessioner måste du lagra det någonstans. Jag antar att det är vad $answer finns i din databas?

Din UPDATE frågan är lite trasig. Först bör du se till att det fungerar korrekt utan variablerna, jag gillar att gå till kommandoradsklienten eller ett grafiskt verktyg som phpMyAdmin. Det kan se mer ut så här:

UPDATE polls SET result = result + 1 WHERE poll_id = 1;

Där poll är din tabell och result och poll_id är kolumner i din tabell.

Det verkar som om du försöker ställa flera frågor till användaren, så du skulle ha ett annat poll_id för var och en och använd ett dolt formulärfält för att få värdet för poll_id . Du verkar använda $row array för det nu, men det verkar bräckligt och det kommer inte att skalas när du bygger fler omröstningsalternativ (tja, tekniskt sett kommer det att skalas upp, men du kommer aldrig att kunna ta bort en fråga eller bli av med gamla omröstningar.

Du verkar använda PDO (eftersom den "objektorienterade stilen" mysqli execute tar en void-parameter och inget av PHP-biblioteken som talar till SQL Server verkar ha den exakta syntaxen), men då skulle jag förvänta mig att din prepare påstående att ha frågetecken för variablerna snarare än direkt substitution. Se PHP-manualen för detaljer om du är otydlig med rätt syntax, men förhoppningsvis har du redan varit med om det innan du kom hit.

När du väl har åtgärdat dessa problem, om du har ytterligare problem borde det vara lite lättare att spåra vad som händer.




  1. MySQL SHA2-funktionen verkar inte fungera

  2. MysQl-fel:Ogiltigt parameternummer

  3. Oracle till PostgreSQL:ANSI yttre kopplingssyntax i PostgreSQL

  4. MySQL GROUP &COUNT Flera tabeller