14. februar 2006 - 22:04
Der er
15 kommentarer og 1 løsning
mysql_connect/select_db fejlmeddelelse
Sider her og bakser med et lille (sikkert nemt) problem. Jeg sidder her med en MySql fil som skal ordne alt med mysql ol. Koden ser således ud: --- <?php if(!defined('NF')) die('Du kan ikke gå direkte til filen'); //Forbind til databasen function Forbind(){ global $MySql; if(!mysql_connect($MySql[Server], $MySql[Brugernavn], $MySql[Adgangskode])) die('<p class="Fejlmeddelelse">Forbindelsesfejl: <b>'.mysql_error().'</b></p>'); elseif(!mysql_select_db($MySql[Database])) die('<p class="Fejlmeddelelse">Fejl ved valg af database: <b>'.mysql_error().'</b></p>'); } ?> --- For at teste fejlmeddelelserne har jeg bevidst angivet forkerte oplysninger i $MySql[] tingene, men istedet for at vise fejlmeddelelsen som jeg gerne vil have den til, viser den det i stil med dette: --- Warning: mysql_connect(): Unknown MySQL server host 'looocalhost' (1) in blah/blah/blah/blah/MySql.php on line 11 Forbindelsesfejl: Unknown MySQL server host 'looocalhost' (1) --- Hvordan er det nu jeg fjerner den første fejlmeddelelse så det kun er min brugerdefinerede fejlmeddelelse der kommer frem? er helt blank nu :P
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
14. februar 2006 - 22:09
#1
Prøv sådan her i stedet: mysql_connect($MySql["Server"], $MySql["Brugernavn"], $MySql["Adgangskode"])) or die('<p class="Fejlmeddelelse">Forbindelsesfejl: <b>' . mysql_error() . '</b></p>');
14. februar 2006 - 22:11
#2
Altså: <?php if (!defined('NF')) die('Du kan ikke gå direkte til filen'); //Forbind til databasen function Forbind() { global $MySql; mysql_connect($MySql["Server"], $MySql["Brugernavn"], $MySql["Adgangskode"])) or die('<p class="Fejlmeddelelse">Forbindelsesfejl: <b>' . mysql_error() . '</b></p>'); mysql_select_db($MySql["Database"]) or die('<p class="Fejlmeddelelse">Fejl ved valg af database: <b>' . mysql_error() . '</b></p>'); } ?>
14. februar 2006 - 22:13
#3
samme fejlmeddelelse. prøvede også noget i stil med if(!blahblahblah) MySqlFejl("Forbindelsesfejl: ".mysql_error()); og kaldte den i en funktion, men den siger det samme :S først i toppen og så igen min egen
14. februar 2006 - 22:14
#4
Ha! sørme så! nu virker det (måske min server der er lang tid om at opdatere efter man smider filer op på den... bukker og takker, klask et svar i nakken på mig ;)
14. februar 2006 - 22:15
#5
rettelse igen, mig der var for hurtig, får samme fejl, så bare fejlen var anderledes og kortere, men der var en ) for meget et sted :(
14. februar 2006 - 22:20
#6
<?php if (!defined('NF')) die('Du kan ikke gå direkte til filen'); //Forbind til databasen function Forbind() { global $MySql; mysql_connect($MySql["Server"], $MySql["Brugernavn"], $MySql["Adgangskode"]) or die('<p class="Fejlmeddelelse">Forbindelsesfejl: <b>' . mysql_error() . '</b></p>'); mysql_select_db($MySql["Database"]) or die('<p class="Fejlmeddelelse">Fejl ved valg af database: <b>' . mysql_error() . '</b></p>'); } ?>
14. februar 2006 - 22:22
#7
Stadig samme fejl (se fejlen på
http://netfora.netlosninger.dk )
Kan det være fordi man ikke har lov til at fjerne fejlen fra connect og select_db?
14. februar 2006 - 22:29
#8
Vi har jo ikke fjernet fejlen, den ligger stadig i "... or die()" delen. Hmm, det er lidt mystisk, det burde fungere med den kode.
14. februar 2006 - 22:31
#9
Jamen, det fungere sgi da også. Den skriver jo netop det den skal: ... or die('<p class="Fejlmeddelelse">Forbindelsesfejl: <b>' . mysql_error() . '</b></p>');
14. februar 2006 - 22:31
#10
Forbindelsesfejl: Unknown MySQL server host 'loocalhost' (1)
14. februar 2006 - 22:33
#11
det er mig der lige legede lidt, tror jeg fandt ud af det... lige et øjeblik
14. februar 2006 - 22:38
#12
Søgte i koderne til SMF forumet og fandt ud af at der skal et @ foran (hvorfor var det jeg ikke søgte efter det til at starte med?) Så slutresultatet ser sådanher ud: <?php if (!defined('NF')) die('Du kan ikke gå direkte til filen'); //Forbind til databasen function Forbind() { global $MySql; if(!@mysql_connect($MySql["Server"], $MySql["Brugernavn"], $MySql["Adgangskode"])) die('<p class="Fejlmeddelelse">Forbindelsesfejl: <b>' . mysql_error() . '</b></p>'); elseif(!@mysql_select_db($MySql["Database"])) die('<p class="Fejlmeddelelse">Fejl ved valg af database: <b>' . mysql_error() . '</b></p>'); } ?> og har testet ved at trække værdier ud af databasen, virker fint ;) ellers tak for hjælpen nielle
14. februar 2006 - 22:43
#13
Der er vist ikke noget krav om at der skal en @ foran. Men min kode i 14/02-2006 22:20:05 burde virke. Ellere retter sagt: Den virker. :^)
14. februar 2006 - 22:46
#14
bare ikke hos mig... af en eller anden mystisk grund, men nok om det... fik det til ;)
14. februar 2006 - 22:52
#15
Den fejlbesked som du fik - 14/02-2006 22:31:39 - er nu da ellers lige præcis den som din kode - 14/02-2006 22:31:17 - skal udskrive.
14. februar 2006 - 22:54
#16
Det var fordi jeg lige forinden havde rettet den til et @, jeg var igang med at se om den kunne skabe forbindelse til databasen med @ foran, og det kunne den.
Vi tilbyder markedets bedste kurser inden for webudvikling