MySQL-Abfrage

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
goodpeace
Mitglied
Beiträge: 114
Registriert: 18.06.2008 21:46

MySQL-Abfrage

Beitrag von goodpeace »

Hallo ,

Ich wollte fragen wie mann in der DB prüft ob schon eine Zeile drin ist .

ZB . Will ich abfragen op in der DB 'Warnings' das Mitglied mit dem Namen X schon verfasst ist . Wenn schon ein eintrag mit dem Nicknamen drin sein sollte dass mann dann auf eine andere Seite Weitergeleitet wird ?

Danke im voraus
piero
Mitglied
Beiträge: 476
Registriert: 10.11.2008 17:15
Wohnort: Schweiz

Beitrag von piero »

also verbindung usw. sollte schon stehen...
sqlabfrage sieht ganz normal aus:

Code: Alles auswählen

SELECT id FROM `deine_tabelle` WHERE `username`='der username' LIMIT 1
wieviele id's da nun zurückkommen kannst du mit der funktion mysql_affected_rows() abfragen ;)

der phpcode folglich:

Code: Alles auswählen

$username = "foobar";
// $username mit sicherheitsfunktionen durchchecken, damit kein scheiss gemacht werden kann...
mysql_query("SELECT id FROM `deine_tabelle` WHERE `username`='$username' LIMIT 1");

if(mysql_affected_rows()) {
//code wenn der name schon existiert
} else {
//code wenn der name noch nicht existiert.
}
das ist alles ;)
goodpeace
Mitglied
Beiträge: 114
Registriert: 18.06.2008 21:46

Beitrag von goodpeace »

SUper danke dir =)

Werde das später sofort mal testen =)
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

piero hat geschrieben:wieviele id's da nun zurückkommen kannst du mit der funktion mysql_affected_rows() abfragen ;)
Vielleicht solltest du dir vorher die Doku zu einer Funktion durchlesen, bevor du sie jemandem empfiehlst:
mysql_affected_rows() liefert die Anzahl betroffener Datensätze durch die letzte INSERT, UPDATE oder DELETE Anfrage an den Server

...

Um die Anzahl der gelieferten Datensätze einer SELECT-Anfrage zu erhalten benutzen Sie stattdessen die Funktion [php:mysql_num_rows]
Wenn man aber sowieso nur die Anzahl braucht, kann man auch gleich

Code: Alles auswählen

SELECT COUNT(primary_key_feld) FROM ...
benutzen, dann muss der DB-Server nämlich nur diese Information bereitstellen.
KB:knigge
piero
Mitglied
Beiträge: 476
Registriert: 10.11.2008 17:15
Wohnort: Schweiz

Beitrag von piero »

hmm... irgendeine leise ahnung hatte ich schon, dass da irgwndwas verkehrt war, nur kam ich nicht drauf^^
thx jedenfalls :)
goodpeace
Mitglied
Beiträge: 114
Registriert: 18.06.2008 21:46

Beitrag von goodpeace »

Habs eingebaut funktioniert so wie ich mir das gedacht hatte =)
Antworten

Zurück zu „Coding & Technik“