29. oktober 2001 - 12:50
Der er
26 kommentarer og 2 løsninger
Problem!!
Hej eksperter! Jeg har lavet en chat men der er noget der ikke funker! Når man opretter bruger skal den sætte nogle informationer ind i min MySQL men det gør den ikke!! opretok.php filen ser sådan her ud: <? $d = \"%d\";$b = \"%B\";$y = \"%Y\";$h = \"%H\";$m = \"%M\";$s = \"%S\";?> <? $dato = (strftime(\"$d $b $y kl. $h:$m:$s\"))?> <?$dato = str_replace(\"January\", \"Januar\", $dato);$dato = str_replace(\"February\", \"Februar\", $dato);$dato = str_replace(\"March\", \"Marts\", $dato);$dato = str_replace(\"May\", \"Maj\", $dato);$dato = str_replace(\"June\", \"Juni\", $dato);$dato = str_replace(\"October\", \"Oktober\", $dato);?> <font> <? $result = mysql_query(\"SELECT * FROM brugersystem where brugernavn like \'$user\'\"); $row = mysql_fetch_array($result); ?> <? $btjeck = strtoupper($user); $dbtjeck = strtoupper($row[brugernavn]); ?> <? $ip = $REMOTE_ADDR; $logintid = time(); ?> <? if($btjeck == $dbtjeck) { echo \"Brugeren er allerede i brug!<br>\"; } elseif(!$user) { echo \"Du skal skrive brugernavn!\"; } elseif(!$pass) { echo \"Du skal skrive kodeord!\"; } elseif($pass == $kodeord1) { ?> <? $insertSQL = \"insert into brugersystem (brugernavn, kodeord, point, område, email, køn, online, oprettet, sidst, ting, status, tid, logintid, ip) mysql_query($insertSQL); values (\'$user\',\'$pass\',\'0\',\'$område\',\'$email\',\'$køn\',\'nej\',\'$dato\',\'$dato\',\'0\',\'bruger\',\'0\',\'$logintid\',\'$ip\')\"; ?> <font size=-2 face=verdana> Brugeren <? echo $user; ?> er nu oprettet ! <? } else { echo \"Koderne var ikke ens\"; } ?> </font>
Annonceindlæg fra HP
29. oktober 2001 - 12:52
#1
ret $insertSQL = \"insert into brugersystem (brugernavn, kodeord, point, område, email, køn, online, oprettet, sidst, ting, status, tid, logintid, ip) til $insertSQL = \"insert into brugersystem values(brugernavn, kodeord, point, område, email, køn, online, oprettet, sidst, ting, status, tid, logintid, ip)
29. oktober 2001 - 12:58
#2
disky-> det virker stadigvæk ikke!
29. oktober 2001 - 12:58
#3
$insertSQL = \"insert into brugersystem (brugernavn, kodeord, point, område, email, køn, online, oprettet, sidst, ting, status, tid, logintid, ip) values (\'$user\',\'$pass\',\'0\',\'$område\',\'$email\',\'$køn\',\'nej\',\'$dato\',\'$dato\',\'0\',\'bruger\',\'0\',\'$logintid\',\'$ip\')\";
29. oktober 2001 - 12:59
#4
fri-hash, der skal ikke plinger (\') rundt om ikke bogstavs kolonner.
29. oktober 2001 - 12:59
#5
alså : INSERT INTO tabelnavn (kolonne1, kolonne2) VALUES (\'værdi1\', \'værdi2\')
29. oktober 2001 - 13:00
#6
nej ingen plinger om tal, jeg kender jo ikke datatyperne for hans kolonner har bare pastet hans egen value-liste
29. oktober 2001 - 13:00
#7
altså NEJ insert into tabelnavn values(integer,\'text\',\'2001-10-28\') osv. Der SKAL IKKE \'\' rundt om tal osv. !!!
29. oktober 2001 - 13:01
#8
du skal ikke sige hvilke kolonner hvis du udfylder alle felter.
29. oktober 2001 - 13:02
#9
Det virker altså stadigvæk ikke!! Den \"skriver\" det ikke ind i MySQL\'en!! :(
29. oktober 2001 - 13:04
#10
Skriv hvordan din tabel er defineret
29. oktober 2001 - 13:05
#11
har du noget kode der ligner: mysql_connect(\"hostnavn\", \"userid\", \"password\"); mysql_selectdb(\"databasenavn\"); ??
29. oktober 2001 - 13:06
#12
fri-hash-> Ja jeg har en kode der ser sådan ud.. (db.php) tablen: > brugernavn (varChar,255) > kodeord (varChar,255) > point (int,255) > område (varChar,255) > email (varChar,255) > køn (varChar,255) > online (varChar,3) > oprettet (varChar,255) > sidst (varChar,255) > status (varChar,255) > tid (varChar,255) > logintid (int,255) > ip (varChar,30) > figur (varChar,255)
29. oktober 2001 - 13:08
#13
så burde denne virke: $insertSQL = \"insert into brugersystem (brugernavn, kodeord, point, område, email, køn, online, oprettet, sidst, ting, status, tid, logintid, ip) values (\'$user\',\'$pass\',0,\'$område\',\'$email\',\'$køn\',\'nej\',\'$dato\',\'$dato\',\'0\',\'bruger\',\'0\',$logintid,\'$ip\')\";
29. oktober 2001 - 13:08
#14
$insertSQL = \"insert into brugersystem (brugernavn, kodeord, point, område, email, køn, online, oprettet, sidst, ting, status, tid, logintid, ip) values(\'user\',\'$pass\',0,\'$område\',\'$email\',\'$køn\',\'nej\',\'$dato\',\'$dato\',\'0\',\'bruger\',\'0\',$logintid,\'$ip\')\"; mysql_query($insertSQL); prøv med det.
29. oktober 2001 - 13:10
#15
husk at inkludere db.php i opretok.php, så der bliver skabt forbindelse til databasen, ellers kan du ikke udføre statements
29. oktober 2001 - 13:13
#16
Det virker ikke!! Jeg fatter det ik.. Der kommer ik noget ind i MySQL databasen!
29. oktober 2001 - 13:13
#17
begynd på noget mindre avanceret end en chat.
29. oktober 2001 - 13:14
#18
fri-hash-> Det har jeg gjort.. den står helt øverst i opretok.php
29. oktober 2001 - 13:15
#19
<? include(\"db.php\"); ?>
29. oktober 2001 - 13:15
#20
disky-> Jeg har haft den oppe at kører før men nu laver den pludselig den der fejl!
29. oktober 2001 - 13:19
#21
prøv: $result = mysql_query($insertSQL)or die(mysql_error());
29. oktober 2001 - 13:21
#22
så får du en fejlmeddelelse om hvad der er galt
29. oktober 2001 - 13:25
#23
Øhh hvad menes der med det her: Column count doesn\'t match value count at row 1
29. oktober 2001 - 13:33
#24
prøv echo $insertSQL; og se hvilke værdier variablerne har
29. oktober 2001 - 13:35
#25
Så kommer der det her frem: insert into brugersystem (brugernavn, kodeord, stakat, område, email, køn, online, oprettet, sidst, status, tid, logintid, ip) values(\'user\',\'11\',0,\'storkøbenhavn\',\'\',\'dreng\',\'nej\',\'29 Oktober 2001 kl. 13:37:18\',\'29 Oktober 2001 kl. 13:37:18\',\'0\',\'bruger\',\'0\',1004359038,\'193.89.190.58\') Brugeren 11 er nu oprettet !
29. oktober 2001 - 13:43
#26
fri-hash-> tak for hjælpen... fik det til at virker :) du får 75 for din kanon hjælp og disky du får 25 for din indsats..!! TAKKKER FOR HJÆLPEN!!!!
29. oktober 2001 - 13:46
#27
selv tak :-)
29. oktober 2001 - 13:47
#28
ps: husk $-tegnet foran user i values
Computerworld tilbyder specialiserede kurser i database-management