Pollscript MySQL Tabellen [php/sql] ?? - Seite 2

Seite 2 von 3 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/pollscript_mysql_tabellen_php_sql_72355/page_2 - zur Vollversion wechseln!


vossi schrieb am 26.03.2003 um 16:19

joa und es is redundant .. dein Datenmodell würd meinem Angewandte Datentechnik Lehrer die Tränen in die Augen treiben!


watchout schrieb am 26.03.2003 um 19:40

Zitat von vossi
joa und es is redundant .. dein Datenmodell würd meinem Angewandte Datentechnik Lehrer die Tränen in die Augen treiben!
wiso? ich find die lösung net so schlecht, wenn man mehrere polls mit einem script bewältigen will. auch wenn ich ip-logging etwas useless find, weil sich zb meine ip alle 8h ändert...


Phobos schrieb am 26.03.2003 um 22:59

besser als eine endless vote moeglichkeit :)

ich werds mit cookies machen.


Phobos schrieb am 26.03.2003 um 23:01

Zitat von vossi
joa und es is redundant .. dein Datenmodell würd meinem Angewandte Datentechnik Lehrer die Tränen in die Augen treiben!

ich nehm ja gerne konstruktive kritik hin, aber anstatt anzugeben koenntest du deine meinung auch begruenden?


vossi schrieb am 26.03.2003 um 23:50

Zitat von watchout
wiso? ich find die lösung net so schlecht, wenn man mehrere polls mit einem script bewältigen will. auch wenn ich ip-logging etwas useless find, weil sich zb meine ip alle 8h ändert...

siehe weiter unten ;)

Zitat von Phobos
ich nehm ja gerne konstruktive kritik hin, aber anstatt anzugeben koenntest du deine meinung auch begruenden?

gewöhn dir nen andren Ton an wenn du von mir was erwartest.
Ich setz mich nicht umsonst hin und modellier im ER Studio blöd herum wenn man dann nur angemacht wird und erklärt ist es in meinem ersten Posting schon!

Du hast zwei Tables

bei der ersten steht drinnen wie der Vote heisst und ne ID
bei der zweiten schreibst du die Optionen, deren namen und jedesmal auch den Text der Option NEU hinein

das würd dann so aussehen

Code:
Vote:
ID = 1 
Name = Testwahl
Anzahl = 2

Options:
ID = 1
VoteID = 1
OPT = 1
Name = Bla
IP = 127.0.0.1

ID = 2
VoteID = 1
OPT = 2
Name = vossi
IP = 10.0.0.1

Wo kommt dann der Name für die Option hin?
Und wenn du den Namen der Option bei Options hinzugibst muss er immer wieder drinnen stehen.

Verstehst du wie ich meine?

Schau dir mein Datenmodell und die Beschreibung dazu nochmal an wenn du fragen zur Notation der Verbindungen (den komischen Linien zwischen den Tables) oder andren Sachen hast nur raus damit.


Phobos schrieb am 27.03.2003 um 11:59

ich erwarte überhaupt nix von dir, auserdem hat mich dein datenmodell jetzt nicht wirklich interessiert, sondern was du an meinem auszusetzen hast.

in meinem datenmodell schaut das in wirklichkeit so aus (nehmen wir an wir haben ein poll mit 2 antworten)

Code:
[b]Poll:[/b]
id: 1
titel: Ja oder nein?
anzahl: 2

[b]Votes:[/b]
id: 1
pollid: 1
opt: 1
name: Ja
ip:

id: 2
pollid: 1
opt: 1
name: 
ip: 127.0.0.1

id: 3
pollid: 1
opt: 1
name: 
ip: 192.168.0.2

id: 4
pollid: 1
opt: 2
name: Nein!
ip:

(2 leute haben hier für "JA" gevotet)

abfrage der namen der optionen wäre dann:
Code: PHP
/* steht alles in einer schleife */
$query = "select name from votes where opt='$x'";
$anfrage = mysql_query($query);
$name = mysql_result($anfrage,0,name);
$votes = mysql_num_rows($anfrage) - $anzahl /* wird vorher in einem pollquery defniniert */
...
...

so wird immer die erste zeile aller datensätze abgefragt in denen die optionsnummer $x ist. so hab ich den namen, einen iplogger, und es steht nicht in jedem datensatz der name drinnen.

vielleicht etspricht es nicht deinen prinzipien bzw denen deines lehrers, aber da ich keine informatikschule oder irgendwas in die richtung besuche, begnüge ich mich mit diesem hier.

und erwarte dir keine freundlichkeit wenn du herablassend mit jemandem sprichst.

so long
pHs


vossi schrieb am 27.03.2003 um 15:38

jap .. und das hab ich kritisiert.
dein name bleibt leer bei allen folgenden antworten und somit wird der speicher umsonst belegt dafür.

Deshalb solltest du die Lösung mit den drei Tables verwenden.

Aber wie du meinst .. warum fragst du hier herinnen wenn du jegliche Vorschläge ignorierst und einfach das machst was du glaubst. :bash:


Phobos schrieb am 27.03.2003 um 16:44

ich frage weil ich interesse daran habe wie es andere machen.

dein beispiel post habe ich durchaus durchdacht, es war mir dan aber doch sympathischer den speicherplatz des users in ansppruch zu nehmen, indem ich das mit cookies mache anstatt mit einer history.

kritisierst hast du _GARNICHTS_
du hast lediglich gesagt: "dein Datenmodell würd meinem Angewandte Datentechnik Lehrer die Tränen in die Augen treiben!"

das war in meinen augen weder kritik noch besonders zielfuehrend. ich bat dich nochmal mir zu sagen was du an meinem auszusetzen hast, wieder keine antwort.

dein erster post war ja ueberhaupt eine frechheit un bedarf eigentlich ein kommentar weil er eine mischung aus intolleranz, ignoranz, unueberlegtheit und dummheit ist. ich bin kein "CSler" der "eine memberdatenbank" braucht sondern hab lediglich gefragt wie andere es machen wuerden, ich hatte an meinem ersten post angefuegt das ich beretis 2 moegichkeiten habe die in frage kommen.

wenn du glaubst das du mit mir herablassend reden kannst hast du dich getaeuscht. wenn du um aufmerksamkeit buhlen willst mit solchen kommentaren dann geh ins OT. hoer bitte auf dich fuer das groeste zu halten.


watchout schrieb am 27.03.2003 um 19:46

die options in eine eigene tabelle aufzunehmen is imho nicht sehr zweckführend, da alles im endeffekt sowohl in php als auch in mysql unhandlicher wird, 2 sind in diesem anwendungsfall genau richtig (wenn ich ip loggen will) was spricht dagegen die polloptions in _einem_ feld kommagetrennt zu speichern?


vossi schrieb am 27.03.2003 um 21:14

Zitat von watchout
die options in eine eigene tabelle aufzunehmen is imho nicht sehr zweckführend, da alles im endeffekt sowohl in php als auch in mysql unhandlicher wird, 2 sind in diesem anwendungsfall genau richtig (wenn ich ip loggen will) was spricht dagegen die polloptions in _einem_ feld kommagetrennt zu speichern?

ich kann dir mit einem SQL query alle polloptionen mit den gewählten stimmen (oder prozent) ausgeben

nur weiss ich nicht ob der sh*t dann im MySQL funzt (PosgreSQL rulez)

@Phobos .. ok letz stop flaming

mein erster Post war ne überreaktion und der rest darauf eine gegenseitige Aufschäumung.

ich Entschuldige mich hiermit the End


watchout schrieb am 27.03.2003 um 21:30

Zitat von vossi
ich kann dir mit einem SQL query alle polloptionen mit den gewählten stimmen (oder prozent) ausgeben

nur weiss ich nicht ob der sh*t dann im MySQL funzt (PosgreSQL rulez)
typischerweise hängts beim mysql an den subselects :rolleyes:

whatsoever -> geschmackssache ;)


Sticker schrieb am 28.03.2003 um 13:16

EDIT:
Die Scripts sind in dieser Textdatei: poll.txt--------->poll.txt

Das geht, es ist zwar ein sehr simples Script, Post und Get sollte man nach belieben einsetzen, ich empfehle aber get.

Ip Logging kann man auch einbauen, dieses Script braucht eine MySQL Tabelle und ist so konzipiert möglichst wenig von der MySQL DB zu wollen.

Es hat ein paar Sicherheitslücken die man leicht ausmärzen kann, z.B. wird an die vote.php der Strint mit den Votes übergeben, wenn der User diesen verändert können die bisherigen Votes überschrieben werden, wenn man sich die Daten statt sie über das Formular zu übergeben nochmal aus der DB holt umgeht man diese Sicherheitslücke.

DAs Script geht davon aus das der form.php die Anzahl der Antwortmöglichkeiten übergeben wird und der anzeigen.php die id des Polls


Das nur um zu zeigen das man auch bei dieser Möglichkeit voten kann ;)


watchout schrieb am 28.03.2003 um 17:51

Zitat von Sticker
form.php:[...]
1. kein kompletter code bitte

2. wenn schon dann ab in ein .txt damit!


Sticker schrieb am 28.03.2003 um 19:30

Sorry, hab hier keine Regeln gesehen die das ebsagen, naja jetzt weiß ichs.

Wollte nur mal aufzeigen das es doch so möglich ist


watchout schrieb am 28.03.2003 um 21:34

Zitat von Sticker
Sorry, hab hier keine Regeln gesehen die das ebsagen, naja jetzt weiß ichs.

Wollte nur mal aufzeigen das es doch so möglich ist
und jetzt könntest es ändern :rolleyes: :bash:

na, es gibt keine "regel" aber es gab eine aussage von nem supermod oder admin diesbezüglich ;)

lösung -> pm ;) (hint: think modular!)




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026