|
| Php cookies??? Fra : Yumatci | Vist : 3213 gange 50 point Dato : 08-02-05 16:43 |
|
Jeg er begyndt at eksperimentere med php og cookies! Og har lavet følgende php fil:
Kode <?php
$passwd = "none";
$user = "Tobias";
$samlet = $user.'&'.$passwd;
setcookie("mobilforum", $samlet, time()+36000);
$cookie_info = explode("&", $cookie_data);
$user = $cookie_info[0];
$passwd = $cookie_info[1];
echo "User: ".$user. " Passwd: ".$passwd;
?> |
Og når jeg kører php filen så får jeg en cookie som jeg skal! Men den udskriver bare ikke variablerne $user og $passwd Hvad kan der være galt???
Hjælp!!!
Hilsen Yumatci
| |
| Kommentar Fra : natmaden |
Dato : 08-02-05 17:04 |
| | |
| Kommentar Fra : Yumatci |
Dato : 08-02-05 17:07 |
|
Ok kan jeg ikke lave sådan at jeg har to filer sådan her:
setcookie.php
Kode <?php
$passwd = "none";
$user = "Tobias";
$samlet = $user.'&'.$passwd;
setcookie("mobilforum", $samlet, time()+36000);
// kald hentcookie.php filen
?> |
hentcookie.php
Kode <?php
$cookie_info = explode("&", $cookie_data);
$user = $cookie_info[0];
$passwd = $cookie_info[1];
echo "User: ".$user. " Passwd: ".$passwd;
?> |
Sådan at der hvor der står kald hentcookie.php der kalder den filen hentcookie.php får så burde den jo være updateret!
| |
| Accepteret svar Fra : natmaden | Modtaget 60 point Dato : 08-02-05 17:39 |
|
jo du kan og husk at cookies høre til inden html.
er siden først begyndt at dannes, er det for sent med cookien. *(tror jeg nok)*
Jeg tror at denne virker men har ikke prøvet den endnu !
Kode <?php
$passwd = "none";
$user = "Tobias";
$samlet = $user.'&'.$passwd;
setcookie("mobilforum", $samlet, time()+36000);
// kald hentcookie.php filen
header("Location: hentcookie.php");
exit;
?> |
NB.
den originale skrivmåde er
header("Location: http://www.example.com/");
og efter serveropsætning kan man være nød til at fuske lidt med den.
http://dk.php.net/manual/da/function.header.php
| |
| Kommentar Fra : Yumatci |
Dato : 08-02-05 20:28 |
|
Jeg har fået det til at virke og nu prøvde jeg så at blande det sammen med mit login og får fejl!
index.htm
Kode <html>
<head>
<title>Webzite forum</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div id="menu">
</div>
<div id="overskrift">
<p><b>The Mobil Forum</b></p>
</div>
<div id="login" align="center">
<p><u><b>Login</b></u></p>
<form action="login.php" method="post">
<p>Brugernavn: </p><input type="text" name="bruger">
<p>Password: </p><input type="password" name="passwd">
<input type="submit" value="Login">
<a href="opret.htm">Opret ny bruger</a>
</form>
</div>
</body>
</html> |
style.css
Kode #menu {
position:absolute;
top: 152px;
left: 0px;
width: 1000px;
height: 10px;
background-color: #000;
}
#overskrift {
position:absolute;
top: 180px;
left: 400px;
font-size: 30px;
}
#login {
border-width: 1px;
border-style: solid;
position:absolute;
top: 300px;
right: 10px;
height: 270px;
width: 200px;
background-color: #CCCCCC;
} |
login.php
Kode <?php
include("connect.php");
connectdata();
$bruger = $_REQUEST["bruger"];
$passwd = $_REQUEST["passwd"];
$hent = mysql_query("SELECT * FROM brugere WHERE bruger = '$bruger' AND passwd = '$passwd'");
if($data = mysql_fetch_array($hent)) {
echo "Du er nu logget ind!";
setcookie("user", $bruger, time()+3600);
setcookie("passwd", $passwd, time()+3600);
mysql_close();
exit;
}
else {
echo "Forkert password/brugernavn prøv igen!";
mysql_close();
exit
}
?> |
connect.php
Kode <?php
function connectdata() {
$server = "localhost";
$bruger = "root";
$kode = "";
$database = "test";
if (!mysql_connect("$server","$bruger","$kode")) {
echo "Kunne ikke oprette en forbindelse til MySQL.";
}
if(!mysql_select_db("$database")) {
echo "Kunne ikke vælge databasen: $database";
}
}
?> |
Når jeg kører index.htm og logger ind med et brugernavn og password der allerede eksistere. Så sender den oplysninger til login.php som den skal og der skal den så oprette en cookie men istedet skriver den denne fejl:
Du er nu logget ind!
Warning: Cannot modify header information - headers already sent by (output started at c:\apache\htdocs\gaestebog\login\connect.php:19) in c:\apache\htdocs\gaestebog\login\login.php on line 17
Warning: Cannot modify header information - headers already sent by (output started at c:\apache\htdocs\gaestebog\login\connect.php:19) in c:\apache\htdocs\gaestebog\login\login.php on line 18
| |
| Godkendelse af svar Fra : Yumatci |
Dato : 11-02-05 08:46 |
| | |
| Du har følgende muligheder | |
|
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.
Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
| |
|
|