Avatar billede fommy Nybegynder
04. september 2007 - 16:41 Der er 6 kommentarer og
2 løsninger

Kan ikke hitte ud af list()

Jeg har et faktura system hvor der er en login side til kunder, og når kunden logger ind bliver hans oplysninger lagt i variabler.
Koden til selve login delen hvor det går galt ser således ud:

if (mysql_num_rows($result) == 1)
    {
    session_start();

    session_register("client_id");
    session_register("client_name");
    session_register("client_pass");
    session_register("client_email");
    session_register("client_ref");
    session_register("client_company");
    list($clientid, $name, $pass, $email, $ref, $company) = mysql_fetch_row($result);
    $client_id = $clientid;
    $client_name = $name;
    $client_email = $email;
    $client_ref = $ref;
    $client_company = $company;
   
    header("Location: menu.php");
    mysql_free_result ($result);   

    mysql_close($connection);
    }

Det der går galt, er at variablen $company indeholder kundens adresse. Det har noget med den list() funktion at gøre, men jeg kan ikke helt greje den..
Avatar billede hmortensen Nybegynder
04. september 2007 - 16:48 #1
list() opretter variablerne i den rækkefølge de kommer i arrayet.
Jeg har tilladt mig at omskrive din kode en smule:

if (mysql_num_rows($result) == 1)
{
  session_start();
  $row = mysql_fetch_assoc($result);
  $_SESSION['client_id'] = $row['felt1'];
  $_SESSION['client_name'] = $row['felt2'];
  osv..
 
  mysql_free_result ($result);
  mysql_close($connection);
  header("Location: menu.php");
}

feltX skal så erstattes at det feltnavn som holder den værdi du ønsker.
Avatar billede nielle Nybegynder
04. september 2007 - 17:04 #2
> list() opretter variablerne i den rækkefølge de kommer i arrayet.

Dette betyder at du skal tilbasse din SQL-sætning sådan at den udtrækker felterne i samme rækkefølge som du bruger dem i din list():

$sql = "SELECT client_id, client_name, client_pass, client_email, client_ref, client_company FROM clientTable ...";

Eller hvad felterne nu hedder i din tabel.
Avatar billede fommy Nybegynder
04. september 2007 - 17:28 #3
Nu har jeg fattet hvordan det virker :D

@hmortensen
Jeg kunne dog ikke lige få din omskrevne kode til at arbejde sammen med det eksisterende, så jeg beholdte det gamle kode.

@nielle
Tak uddybningen

Hvis I begge lægger et svar, skal i få point.
Avatar billede nielle Nybegynder
04. september 2007 - 20:40 #4
Svar :^)
Avatar billede nielle Nybegynder
18. september 2007 - 08:12 #5
hmortensen?
Avatar billede hmortensen Nybegynder
18. september 2007 - 15:45 #6
Hovsa, svar :)
Avatar billede fommy Nybegynder
18. september 2007 - 17:21 #7
Jeg havde da også helt glemt det, men her er point :D
Avatar billede nielle Nybegynder
18. september 2007 - 18:04 #8
Takker :^)
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