Ich habe folgende Frage!
Jeder kennt das du registrierst dich auf einer Webseite und bekommst dann eine Email zugeschickt, erst wenn du die Emailadresse über einen Link bestätigt hast wirst du freigeschaltet.
Die große Frage ist: WIE GEHT DAS?
Den das steht in keinem Buch wo man das lernen kann, also kann mir da jemand ein paar tipps geben?
BItte danke
Ankündigung
Einklappen
Keine Ankündigung bisher.
[Erledigt] PHP-MySQL-Freischaltung
Einklappen
Neue Werbung 2019
Einklappen
X
-
[Erledigt] PHP-MySQL-Freischaltung
Stichworte: -
-
Ein Gast antwortetejo so hab ichs bisher gemacht aber bei rund 8 spaltenaber wenns doch auch so funktioniert dann is es ja egal
-
Ein Gast antworteteWenn sich einer einloggt, dann gibt's diesen Namen ja nur einmal. LIMIT 1 sorgt dafür dass nur ein Datensatz ausgelesen wird. Da es den ja eh nur einmal gibt, funktioniert alles.
Du kannst das LIMIT 1 auch weglassen, ich bau's aber ein, weil ich dann sehe, dass ich danach keine Schleife beginnen muss.
Beim Löschen kann es auch unschöne Fehler vermeiden. z.B wird bei einer falschen Abfrage nur ein Datensatz und nicht alle gelöscht.
Ach ja, zum Sternchen: schreib lieber die ganzen Namen der Felder untereinander (beim letzten kein Komma!):Code:name, passwort, date, ...
mfg RudiS
Einen Kommentar schreiben:
-
Ein Gast antwortetehey super hat geklappt viele thx an dichdas * brauch ich im mom schon für das einloggen und status anzeigen aber wenn ichs nichmehr brauche dann weis ichs wenigstens
und das LIMIT 1 sorgt dafür das nur 1 datensatz ausgelesen wird aber trotzdem klappt der login warum das?
Einen Kommentar schreiben:
-
Ein Gast antworteteAlso das LIMIT 1 sorgt dafür das nur ein Datensatz ausgelesen wird, ist nicht unbedingt nötig, verwende ich aber zur Übersicht.
Du solltest * nicht verwenden, da er da alle Felder ausliest, du diese aber nicht unbedingt benötigst. Außerdem ist es übersichtlicher, denn dann weist du, welche Werte du verarbeiten musst.
Hier musst du aber nur date auslesen, da ich ja nur das Datum prüfen will.
mfg RudiS
Einen Kommentar schreiben:
-
Ein Gast antworteteui so allerlei nicht verständliches zeugs hast du da drin
also wofür brauch ich denn jetzt LIMIT 1;
und wenn ich alle datensätze aus der datenbank lesen will brauch ich ja ein SELECT * ... oder?
ok ich stell die spalte wieder auf DATE und probiers schnell aus
Einen Kommentar schreiben:
-
Ein Gast antworteteNur damit ich das richtig verstehe, dieser Code funktioniert also nicht:Code:$sql = "SELECT date FROM userarea WHERE name = '".$name."' LIMIT 1; "; $result = mysql_query($sql) or die(mysql_error()); if (mysql_num_rows($result) == true) { $row = mysql_fetch_assoc($result); // ausgelesenes Datum ungleich jetziges Datum: if ($row['date'] != date('Y-m-d')) { $sql = "UPDATE userarea SET date = NOW() WHERE name = '".$name."' LIMIT 1; "; $result = mysql_query($sql) or die(mysql_error()); } }
Ich hoffe das hilft dir jetzt weiter.
mfg RudiS
Einen Kommentar schreiben:
-
Ein Gast antwortetealso
hab da ein problem mit der if-abfrage normal sollte da rauskommen false aber komischerweise wird true ausgegeben
Code:if ($get["date"] <> $nowdate) {
jetzt hab ich aber das problem das da nicht 2004-07-17 eingetragen wurde sondern 1980
also reinschreiben tut er was aber leider das falsche
Einen Kommentar schreiben:
-
Ein Gast antworteteAlso ich versteh das nicht. Bei mir geht's problemlos.
Hast du noch weitere Probleme die ich aber noch nicht entdeckt hab?
mfg RudiS
Einen Kommentar schreiben:
-
Ein Gast antwortetejop bis eben war es DATE jetzt ist es VARCHAR im anderen thread hab ich acuh schon gesagt das irgendwas mit der if abfrage nich stimmt (und dem einfügen)
mfg wing
Einen Kommentar schreiben:
-
Ein Gast antworteteWelchen Spaltentyp hat den dein Feld. Es müsste DATE sein.
mfg RudiS
Einen Kommentar schreiben:
-
Ein Gast antworteteZitat von Wingbei dir oben is das doch auch einfach mit NOW() oder?!
hab sogar mal versucht 2012-04-05 anstatt $nowdate bzw. NoW() einzufügen aber das ging auch nich
Denn normal würde es 20120405 gespeichert werden. Also ohne den Strichen.
Einen Kommentar schreiben:
-
Ein Gast antwortetebei dir oben is das doch auch einfach mit NOW() oder?!
hab sogar mal versucht 2012-04-05 anstatt $nowdate bzw. NoW() einzufügen aber das ging auch nich
Einen Kommentar schreiben:
-
Ein Gast antworteteWas heißt denn es funzt nicht?
Wird eine Fehlermeldung ausgegeben?
Passiert einfach nichts?
Also bei mir geht das, aber du musst es genauso schreiben wie bei mir als nicht 'NOW()', weil er es sonst einfach als Text einfügen will.
mfg RudiS
Einen Kommentar schreiben:
-
Ein Gast antwortetehmm also eigentlich is alles richtig bis auf das was der einsetzen muss
mit NOW() funzts nich und alles andere was ich rumprobiert habe auch nich aber der username is schon richtig hab ich etwas oben bei sql SELECT auch
Einen Kommentar schreiben:
Einen Kommentar schreiben: