webForumDet fria alternativet

Finns det nåt sätt att skicka variabler utan att det syns?

PHP

15 svar · 329 visningar · startad av Zir Tiger

Medlem sedan maj 200256 inlägg
Frågan#1

Finns det nåt sätt att skicka variabler utan ett formulär men som ändå inte syns i adressen?

Man kan ju använda:

<meta http-equiv=refresh content=\"0; url=index.php?bla=japp\">

Men då syns ju variabeln bla.. Om jag t.ex. vill logga in så blir ju inte det så smart om bla exempelvis skulle vara ett lösenord så vill ju inte det synas.. Och jag vill inte använda nåt form..

så.. Hur?

Medlem sedan apr. 2001109 inlägg
#2

sessioner är vad jag vet det enda sättet att "skicka" variabler utan att använda <form>

Medlem sedan maj 200256 inlägg
#3

Hur funkar sessions då? Någon bra tutorial kanske? Finns det nån tråd här på forumet kanske? *springer iväg och tittar*

Danke iaf..

Medlem sedan aug. 20002 975 inlägg
Medlem sedan maj 200256 inlägg
#5

Tack tack.. Hmm.. Men jag får inte till det.. Får hela tiden felmeddelanden..

Warning: Cannot send session cookie - headers already sent by (output started at c:\mina dokument\easyphp\www\test\index.php:2) in c:\mina dokument\easyphp\www\test\index2.php on line 3

Warning: Cannot send session cache limiter - headers already sent (output started at c:\mina dokument\easyphp\www\test\index.php:2) in c:\mina dokument\easyphp\www\test\index2.php on line 3

Hur löser jag detta?

Medlem sedan aug. 20002 975 inlägg
#6

Du får inte ha någon output, echo eller HTML-kod, före session_start(). Börja överst på aktuella sidor med

<?php
session_start();
.
.
.
?>

Medlem sedan maj 200256 inlägg
#7

Det hjälper inte. Min kod:

<?
session_start();
$komin = 1;
session_register("komin");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>

Men sen har jag en annan sida som kör include så att den här sidan hamnar överst.. får man inte ha det heller?

Medlem sedan aug. 20002 975 inlägg
#8

Får du felmeddelande på den här sidan så kan jag endast tänka mig att du har en tomrad överst eller ett mellanslag före <?

Medlem sedan maj 200256 inlägg
#9

Nope.. men det är ju en
Index2.php: <?
session_start();
$komin = 1;
session_register("komin");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head> etc etc.

index.php
<?php
include "index2.php";
?>

Felmeddelande.. på raden där det står session_start..

Y.. =( blir så ledsen..

Medlem sedan mars 20007 896 inlägg
#10

Ha med session_start () på index.php istället. :)

Medlem sedan maj 200256 inlägg
#11

Hur gör jag om jag vill lägga till nåt i en session fasst lite senare på sidan.. T.ex. Om jag vill att det som lagras i session ska vara id nummret och det ska lagras där om rätt lösen och användarnamn är angivet?

Medlem sedan mars 20007 896 inlägg
#12

Så länge du inte skriver något till klienten så går det bra.

Medlem sedan maj 200256 inlägg
#13

Yeyy.. =) det funkar.. tack tack.. =) Yiihaa. =)

Medlem sedan aug. 20002 975 inlägg
#14

Har du bara session_start() överst på din sida så ska det gå bra, även om du gjort output:

$id = 12345;
session_register("id");

Men normalt sett så postar du ditt inloggningsformulär till ett skript, och i det skriptet behöver du inte ha någon output innan du registrerar sessionsvariabeln.

Medlem sedan maj 200256 inlägg
#15

Hur kan man lätt designa en logout knapp? (koden alltså)

Och hur gör man så att sessionen stängs efter en viss tid?

Medlem sedan aug. 20002 975 inlägg
#16

Utloggningsformulär:

<form action="loggaut.php" method="post">
<input type="hidden" name="destroy">
<input type="submit" value="Avsluta sessionen">
</form>

Filen loggaut.php:

<?php 
session_start();
if (isset($HTTP_POST_VARS['destroy'])){
  $HTTP_SESSION_VARS = array();
  unset($HTTP_COOKIE_VARS[session_name()]);
  session_destroy();
  header("Location: [url]http://www.minsida.com/index.php[/url]");
  exit;
}
?>

Hur man ställer in tiden för hur länge sessionen ska gälla vet jag inte. Antingen webservern och/eller php.ini .

255 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)