Avatar billede bursch Nybegynder
09. august 2006 - 20:15 Der er 10 kommentarer og
1 løsning

Funktion virker i PHP5, men ikke i PHP4

Hejsa,
Jeg har lavet to funktioner, den første (connect) skal logind på databaseserveren og vælge database. Den anden skal bruge (tjekbruger) skal bruge connect til at lave en query i bruger tabellen.
Den virker fint nok hvis jeg køre den på en server sat op til PHP5, men hvis jeg bruger den med PHP4 kan den ikke fange serveren og melder: "Kan ikke etablere forbindelse til databasen".

Nogle der har en idé om hvad det skyldes?

function connect(){
    if (!$db = @mysql_connect("server", "bruger", "kode")) {
    print ("Kan ikke etablere forbindelse til database serveren.\n");
    return 0;       
    }else{
        mysql_selectdb("database");
        return 1;
    }
}


function tjekbruger($brugernavn, $kodeord){
    if (connect()) {
        $kodeord = substr($kodeord,0,8);
        $sql = "select * from bruger where brugernavn = '$brugernavn' and kodeord = '$kodeord'";
        $resultat = mysql_query($sql);
        if (mysql_num_rows($resultat) == 1) {
            $_SESSION["brugernavn"] = "Admin ok";
            #setcookie("brugernavn", $brugernavn);
            #setcookie("kodeord", $kodeord);
            return 1;
        }else{
            echo "<span class=\"fejl\">Beklager du blev ikke godkendt.<br /><br /></span>\n";
            return 0;
        }
    }   
}
Avatar billede nielle Nybegynder
09. august 2006 - 20:25 #1
Prøv med:

function connect(){
    $db = @mysql_connect("server", "bruger", "kode");
    if ($db === false) {
        print ("Kan ikke etablere forbindelse til database serveren.\n");
        return false;
    } else {
        mysql_selectdb("database");
        return true;
    }
}
Avatar billede bursch Nybegynder
09. august 2006 - 21:04 #2
Den siger desværre stadig det samme. :-(
Avatar billede nielle Nybegynder
09. august 2006 - 21:19 #3
Siden at du har to forskellige PHP-installatiomer, må du jo også have to forskellige databaser. Er du sikker på at login- og password-oplysningeren er korrekte på den som fejler?
Avatar billede bursch Nybegynder
11. august 2006 - 23:10 #4
Det ligger på en server hvor jeg selv kan bestemme hvilket version PHP jeg vil anvende.
Men det er den korrekte information som der er anvendt.
Avatar billede nielle Nybegynder
12. august 2006 - 07:54 #5
Lad os da se hvad det er MySQL brokker sig over:

function connect(){
    $db = mysql_connect("server", "bruger", "kode") or die(mysql_error());
    if ($db === false) {
        print ("Kan ikke etablere forbindelse til database serveren.\n");
        return false;
    } else {
        mysql_selectdb("database");
        return true;
    }
}
Avatar billede bursch Nybegynder
15. august 2006 - 10:08 #6
Ja, hvorfor har jeg ikke tænkt på det.. :-/
Det prøver jeg lige af når jeg engang kommer hjem.
Avatar billede nielle Nybegynder
22. august 2006 - 12:44 #7
Har du fået kigget på det?
Avatar billede bursch Nybegynder
24. august 2006 - 12:48 #8
Ja det har jeg det var fordi at den version af Mysql jeg brugte var ældre end 2.4 eller sådan noget også virker den ikke i PHP 5?
Jeg ændre lidt i min kode også virket skidtet igen.

Men smid lige et svar så får du dine point.
Avatar billede nielle Nybegynder
24. august 2006 - 19:36 #9
2.4? Mener du ikke 4.2? 2.4 er da i hvert fald en tudsegammel en, som burde være blevet opgraderet for år siden ... om ikke andet så fordi at der er en masse dejlige features i de nyere MySQL'ere.
Avatar billede bursch Nybegynder
26. august 2006 - 21:28 #10
Jo, men må nok erkende at jeg ikke kan huske hvilket version af MySQL det var.
Avatar billede bursch Nybegynder
26. august 2006 - 21:28 #11
.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester