Avatar billede butcher Nybegynder
25. september 2003 - 13:13 Der er 6 kommentarer og
1 løsning

session probs

har et login script:

include("config.php");
$query = "SELECT id, user, pass, rabat FROM brugerlogin WHERE user = '".$_POST['bruger']."' AND pass= '".$_POST['pass']."'";
$result = mysql_query($query)or die("MySQL fejl: " . mysql_error());
$log = mysql_fetch_array($result);

if ($_POST['bruger'] = $log['user'] && $_POST['pass'] = $log['pass']) {
   
        $_SESSION['status'] = "brugerlogin";
        $_SESSION['navn'] = $_POST["bruger"];
        $_SESSION['rabat'] = $row["rabat"];
    print("    <script language='javascript'>
        location.href='logget.php';
        </script>");

og det virker også fint nok, men så på næste side kunne jeg godt tænke mig at trække data ud fra navn og rabat.

Det gør jeg med:

<?php
echo $_SESSION['rabat'];
echo "<br>";
echo $_SESSION['navn'];
?>

i toppen er der iøvrigt en

<?php
session_start();
?>  og andre koder der bruges i forbindelse med at tjekke om brugeren er logget ind.. dette virker perfekt..

men den skriver ikke noget ved rabat og ved navn skriver 1.. ???
Avatar billede morpheus Nybegynder
25. september 2003 - 13:16 #1
include("config.php");
$query = "SELECT id, user, pass, rabat FROM brugerlogin WHERE user = '".$_POST['bruger']."' AND pass= '".$_POST['pass']."'";
$result = mysql_query($query)or die("MySQL fejl: " . mysql_error());
$log = mysql_fetch_array($result);

if ($_POST['bruger'] = $log['user'] && $_POST['pass'] = $log['pass']) {
   
        $_SESSION['status'] = "brugerlogin"; <-- $_POST['bruger'] ?
        $_SESSION['navn'] = $_POST["bruger"];
        $_SESSION['rabat'] = $log["rabat"]; <--- $LOG?!
    print("    <script language='javascript'>
        location.href='logget.php';
        </script>");
Avatar billede butcher Nybegynder
25. september 2003 - 13:24 #2
øøøh nahh tror jeg ikke, da:

$_SESSION['status'] = "brugerlogin"; bruges på næste side til:

<?php
session_start();
include("brugersider.php");
if ($_SESSION['status'] == "brugerlogin")
{

}
else
{
print("    <script language='javascript'>
        location.href='index.php';
        </script>");
}
?>
<?php

Dette virker også fint..

$_SESSION['rabat'] = $log["rabat"];  var korrekt nok, det gjorde tricket med rabat, nu mangler jeg bare den kan trække det korrekt navn ud af $_SESSION['navn'] og ikke 1 :)
Avatar billede butcher Nybegynder
25. september 2003 - 13:26 #3
Hov..

$_SESSION['navn'] = $log["user"];

sådan det gjorde det, mange tak morpheus  ;D
Avatar billede morpheus Nybegynder
25. september 2003 - 13:28 #4
No problemo... :)
Jeg takker for points
Avatar billede velle Nybegynder
25. september 2003 - 13:39 #5
Jeg har lige et spørgsmål til dit kodeeksempel:

Først har du MySQL-serveren til at tjekke om der findes en post i databasen med de værdier. Dernæst har du PHP til at tjekke det igen! Er det ikke nok at tjekke om MySql rent faktisk har returneret noget, f.eks. med mysql_num_rows()?

<?PHP
$brugernavn = "kaj";
$kodeord = "munk";
$db = mysql_connect("127.0.0.1","");
mysql_select_db("bj",$db);
$sql = "SELECT * FROM `brugere` WHERE `brugernavn` = '$brugernavn' AND `kodeord` = '$kodeord';";
$rs = mysql_query($sql);

if (mysql_num_rows($rs)) {
    echo "Så er han efter min mening go nok!";
}
?>
Avatar billede butcher Nybegynder
25. september 2003 - 13:46 #6
det er muligt, men hvis jeg fjerner det pgp tjek og smider

if (mysql_num_rows($rs)) {

ind så fejler den... :)
Avatar billede butcher Nybegynder
25. september 2003 - 13:47 #7
hov da..

if (mysql_num_rows($result)) {

jo så funker det, godt set :)
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