hej!
jag hade tänkt mig göra en databas där man både ska kunna lägga till och ta bort medlemmar.
min kod ser ut som följande:
<?
session_start();
session_register("loggedIn");
$PASSWORD = "";
$USERNAME = "";
if (!$loggedIn){
if ($PASSWORD==$sPwd && $USERNAME==$sUsername){
$loggedIn = 1;
}
}
if ($loggedIn){
$dl = mysql_pconnect("", "", "");
mysql_select_db("ny", $dl);
if ($deleteid){
// rad 20
$dr = mysql_query("DELETE FROM ny WHERE id=$deleteid", $dl);
} else if ($sNamn && $sEpost) {
$dr = mysql_query("INSERT INTO ny(namn,email) VALUES('$sNamn','$sEpost')", $dl);
}
Problemet är att det kommer upp en varning
(Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource on line 48).
vad jag har tänkt är att det kanske är mysql_num_rows() på rad 47 som lämnar FALSE efter sig eftersom det ännu inte finns några medlemmar lagrade i databasen, fast jag vet inte.
jag tog bort for loopen och la till while. men mysql_connect måste jag ju ha innanför if satsen för annars är man ju connectad direkt...
dock testade jag att flytta ut den men det gjorde ingen skillnad.
är man tvungen att ha ett par poster i databasen? borde det inte gå lika bra att lägga till nya genom koden?
if ($PASSWORD==$sPwd && $USERNAME==$sUsername){
$loggedIn = 1;
}
}
if ($loggedIn){
if ($deleteid){
// Ta bort post, rad 20
$dr = mysql_query("DELETE FROM ny WHERE id=$deleteid", $dl);
} else if ($sNamn && $sEpost) {
// Skapa ny post
$dr = mysql_query("INSERT INTO ny(namn,email) VALUES('$sNamn','$sEpost')", $dl);
}
Då låter vi mysql ge oss ett lite bättre felmeddelande.
Ersätt:
$dr = mysql_query("SELECT * FROM ny", $dl);
Med:
$dr = mysql_query("SELECT * FROM ny", $dl) or die(mysql_error());
Sen är jag lite osäker på hur MySQL reagerar på att du har samma databasnamn som tabellnamn. Det kanske är helt Ok, men jag tycker att man är lite ute på hal is om man har det så.
ahh jag e ju för jäkla dum!
den heter i3no, inte ny...det är tabeller som heter ny! =/
blir lite sne nu!
ska testa!
tack så väldigt mycket för hjälpen!