PHP&MySql: Doppelte Pins in der MySql-Datenbank

naja lars könnte schon recht haben, aber $sql auszugeben birngt nix.
da kommt entweder FALSE oder eben eine Resource raus.
da wäre dann eher sowas wie
PHP:
( ! is_resource($sql)) : (die(mysql_error())) : NULL;

angebracht.
 
[mal so am Rande bemerkt:]
Um in einer Tabelle UNIQUE-Felder zu definieren, verwendest du den alter table/modify befehl

mysql_query("alter table $table modify $spalte typ | [NOT NULL] | [UNIQUE] | [PRIMARY KEY] | [AUTO_INCREMENT]...");

sind wohl die wichtigsten Eigenschaften.
Der "typ" ist der Datentyp der Spalte.

Ich empfehle hierzu SQL in 21 Tagen Kap 1-8

Zum eigentlichen Problem:

Syntax:

if((mysql_count_rows($sql) > 0)
wäre besser.

Problem:
Ließe sich mit unique viel besser lösen, einfach keine Fehlermeldung bei Misserfolg ausgeben.
@mysql_query("insert into pins values $pin");...
(oder so)
Ein @ vor dem Funktionsaufruf unterbindet die Fehlermeldung.
Und wenn du eine Statistik haben willst, wie oft eine PIN 2x vorkommt, machst du das in etwa so:
$q = mysql_query(...);
if(!($q))
{
$misserfolg =1
}

oder sowas.

Gar keine komplizierten Scripts benutzen, die unique PINs zuweisen...einfach auf mysql vertrauen :D
 
ja, hatte 1:1 übernommen aber habe heute nacht alles fertig gemacht hatte einfach mal meine 39 PHP & MySql bücher zur hand genommen dabei eigentlich alle für PHP3 und nur 1 für 4 aber egal! :)

Danke für Eure Hilfe!

~~~~
edit:
Mein Fehler war es die dumme Tabelle nicht zu verändern, tabelle hatte = pin sein müssen :-)

Ich depp :-( :p
 
Zuletzt bearbeitet:
Zurück