Avatar billede hermandsen Juniormester
16. september 2003 - 11:13 Der er 15 kommentarer og
2 løsninger

Dynamisk array i session, men session driller!

Hej Eksperter!

Jeg har søgt på Eksperten et godt stykke tid og nu skal jeg bruge noget hjælp!

session_start(); driller helt ekstremt!

Jeg har forstået at jeg skal erklære session_start(); som det FØRSTE, men alligevel ser det ikke ud til at virke...
Hvad gør jeg forkert!?

<?php
session_start();
session_unset();
session_destroy();
    require("design.php");
    design_top("Forside");
?>

Efterfølgende er der noget html-kode, men det vil jeg ikke trætte jer med...

//hermandsen
Avatar billede TRoXa Novice
16. september 2003 - 11:17 #1
hvad er det lige præcis at du vil ?
Avatar billede hermandsen Juniormester
16. september 2003 - 11:20 #2
Okay...

Jeg er ved at lave et adresse-katotek og brugeren skal så kunne vælge de enkelte kontakter ud ved at klikke på et link. Disse kontakter bliver samlet i en session og brugeren kan til sidst sende mails til de kontakter, udskrive dem eller hvad han/hun nu ønsker...

Noget hen i retning af en indkøbskurv, men jeg synes at session driller!!

Jeg får følgende fejl når jeg hopper ind på siden:

Warning: session_start(): open(/tmp\sess_5032edafc746c811be5119360a965b98, O_RDWR) failed: No such file or directory (2) in c:\programmer\apache\htdocs\kontakter\index.php on line 2

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at c:\programmer\apache\htdocs\kontakter\index.php:2) in c:\programmer\apache\htdocs\kontakter\index.php on line 2

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\programmer\apache\htdocs\kontakter\index.php:2) in c:\programmer\apache\htdocs\kontakter\index.php on line 2

Warning: session_destroy(): Session object destruction failed in c:\programmer\apache\htdocs\kontakter\index.php on line 4


Kan det have noget at gøre med at jeg kører tingene som localhost!?
Avatar billede TRoXa Novice
16. september 2003 - 11:20 #3
<?php
session_start();
session_unset();
session_destroy();
    require("design.php");
    design_top("Forside");
?>

men den kode der starter en session og lukker den igen så det giver ik så meget mening, så gætter på at du nok skal fjerne
session_unset();
session_destroy();

de 2 fra den kode. Men det kommer selvfølgelig an på hvad du vil lave :)
Avatar billede TRoXa Novice
16. september 2003 - 11:21 #4
prøv at lave en mappe der hedder tmp i c:\ hvis du ikke allerede har det
Avatar billede hermandsen Juniormester
16. september 2003 - 11:22 #5
WHAT!?
Skulle man ikke andet!?
Nu får jeg da i det mindste ingen php-fejl, efter at have lavet mappen!! :)
Avatar billede TRoXa Novice
16. september 2003 - 11:23 #6
:) den vil jo ligge de sessions der blir startet i /tmp, men den kunne ikke finde den mappe, så derfor de fejl :)
Avatar billede maniacdog Nybegynder
16. september 2003 - 11:23 #7
Så vidt jeg kan se så køres dette på en Windows maskine.
Hvis du ikke selv i php.ini har defineret hvor den skal gemme sine session filer så gør den det automatisk i c:\tmp
mén hvis denne mappe ikke eksistere i forvejen så kan den ikke gemme filerne der og ergo får du en fejl.

Prøv at opret mappen "tmp" på C:\
så burde det virke :)

ellers så vil jeg give troxa ret i at det ingen mening giver at lave
session_start();
session_destroy();
Avatar billede TRoXa Novice
16. september 2003 - 11:26 #8
virker det ordentligt nu ? :)
Avatar billede hermandsen Juniormester
16. september 2003 - 11:26 #9
Okay...

Det der med session_start(); og session_destory(); fik jeg fra http://www.eksperten.dk/spm/346920

Siger forløbig tak!!

Prøver lige at eksperimentere lidt mere... ;)
Avatar billede TRoXa Novice
16. september 2003 - 11:27 #10
okay
Avatar billede TRoXa Novice
16. september 2003 - 11:27 #11
hvis det kræver at de skal logge ind, så skal du ikke have session_unset() og session_destroy i samme fil, men nok de sidste 2 i en fx logud.php
Avatar billede maniacdog Nybegynder
16. september 2003 - 11:28 #12
Okidokie :)

ellers kan jeg anbefale dig at kigge på
www.php.net/session_start
og
www.php.net/session_destroy

Det er PHP manualen for disse funktioner og de bliver beskrevet rimlig godt :)
Avatar billede hermandsen Juniormester
16. september 2003 - 11:30 #13
>>troxa
Du må også godt lige lægge et svar, så kommer der point senere... :)
Avatar billede TRoXa Novice
16. september 2003 - 11:32 #14
okay :)
Avatar billede hermandsen Juniormester
16. september 2003 - 12:03 #15
Så er der problemer!! :)

<?php
    session_start();

    $_SESSION["idlist"][] = $_POST["id"]; //Henter id og sætter det i slutningen af array
    $idlist = $_SESSION["idlist"];

    require("design.php");
    require("mysql.php");

    design_top("Kontakt liste");

    foreach ($idlist as $id) {
        echo "$id<br />";
    }

    design_bottom();

?>

Den tilføjer fint noget til array'et, hvilket jeg kan se da der kommer flere og flere <br /> ind i koden, men den viser ingen id'er!! :(
Avatar billede hermandsen Juniormester
16. september 2003 - 12:08 #16
Der skulle bruges $_GET("id"); i stedet... :)

Nå, men tak for hjælpen!!

Nu tror jeg godt jeg kan klare resten selv!! :)

//hermandsen
Avatar billede TRoXa Novice
16. september 2003 - 12:13 #17
ellers er du velkommen til at oprette et nyt spørgsmål :P hehe :)

tak for points
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