Avatar billede hoell Nybegynder
26. juli 2004 - 21:25 Der er 11 kommentarer og
1 løsning

WHILE sætning giver knopper

Jeg har følgende kode der virker frem til "WHILE"

$cook = $HTTP_COOKIE_VARS["sessioncookie"];
if ($cook<>"")
{
  echo "$cook <br>";
  $cryptSessionID=md5($cook);
  echo "$cryptSessionID <br>";
  $query = "SELECT username, usertype FROM mos_session WHERE session_ID='$cryptSessionID'";
  echo "$query <br>";
  $result = mysql_query($query);
  echo "$result <br>";
  while ($row = mysql_fetch_array($result))
  {
    echo "$row[username] <br>";
  }
}

Men det giver følgende fejl:
Parse error: parse error, unexpected $ in xxx.php on line 58, hvor line 58 er sidste linie i scriptet. Jeg afslutter PHP delen umiddelbart efter den sidste "tuborg"

Hvis jeg sletter baglæns til og med WHILE virker det tilsyneladende og der spyttes de rigtige værdier ud fra forespørgslerne.

Nogen ideer??
Avatar billede krydset Nybegynder
26. juli 2004 - 21:31 #1
er der mere end det her ??
Avatar billede hoell Nybegynder
26. juli 2004 - 21:36 #2
Ja det kan man godt sige, men jeg skal bruge denne side som en include. tidligere i scriptet er der en formular der ingen problemer giver, jeg skal bruge dette username til denne formular. Grunden til at jeg ikke bare henter username fra "resten er at det er til en ekstra side i Mamboserver, hvis du kender dette.

Håber det har lysnet lidt på sagen.
Avatar billede detox Nybegynder
26. juli 2004 - 21:39 #3
Du mangler sikkert en }
Avatar billede hoell Nybegynder
26. juli 2004 - 21:42 #4
Hej Detox, jeg kan ikke finde ud af hvor det er jeg har prøvet at køre kun dette script uden formularen og der kommer den samme fejl med unexpected $.
Hvis en af jer med falkeøjne kunne være behjælpelig med at se hvor den mangler!
Avatar billede terrak Nybegynder
26. juli 2004 - 21:53 #5
Koden virker fint ved mig, efter jeg har konverteret session kommandoerne til de nyere:

<?php
session_start();

if (isset($_SESSION['username'])) {

$cook = $_SESSION['username'];


if ($cook<>"")
{
  echo "$cook <br>";
  $cryptSessionID=md5($cook);
  echo "$cryptSessionID <br>";
  $query = "SELECT `username` FROM `users`";
  echo "$query <br>";
  $result = mysql_query($query);
  echo "$result <br>";
  while ($row = mysql_fetch_array($result))
  {
    echo "$row[username] <br>";
  }
}

}

?>

Resultatet på http://80.197.67.74/session3.php - dog med en form tilføjet for at sætte sessions.
Avatar billede terrak Nybegynder
26. juli 2004 - 21:54 #6
Og jeg fik blandet sessions og cookies sammen, undskyld ;)
Kigger lige på det igen
Avatar billede detox Nybegynder
26. juli 2004 - 22:07 #7
Prøv måske:
if ($cook != "")
istedet for:
if ($cook<>"")
Avatar billede hoell Nybegynder
26. juli 2004 - 22:10 #8
=>detox det giver samme resultat
Avatar billede terrak Nybegynder
26. juli 2004 - 22:11 #9
Så er det med cookies i stedet for, men der er stadig ingen fejl, kig selv:

http://80.197.67.74/cookies.php

Jeg forstår ikke hvor det ikke virker ved dig.
Avatar billede terrak Nybegynder
26. juli 2004 - 22:14 #10
Det eneste jeg ville sætte en finger på, er echo "$row[username] <br>"; Det kan godt være at det er mig der har lært det forkert, men jeg plejer at bruge echo $row['username']." <br>";

Det virker dog uanset hvad, ved mig.
Avatar billede hoell Nybegynder
26. juli 2004 - 22:22 #11
Er på vej i seng kigger på det i morgen, hvis vejret ikke er alt for godt (har det jo ikke just været denne sommer :(
Avatar billede hoell Nybegynder
26. juli 2004 - 22:50 #12
Det her det virker efter hensigten:

$cook = $HTTP_COOKIE_VARS["sessioncookie"];
    if ($cook<>""){
        $cryptSessionID=md5($cook);
        $query = "SELECT username, usertype FROM mos_session WHERE session_ID='$cryptSessionID'";
        $result = mysql_query($query);
        while ($row = mysql_fetch_array($result)){
                $Uname = $row[username];
            }
    }

Mvh Hoell

Godnat
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