/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
find 5 fejl
Fra : Christoffer


Dato : 22-03-05 18:34

ved ikke om der er 5 fejl, men jeg er stadig ikke så god til php, så der er
sikkert et par fejl at rette..

Jeg har en kode som meget gerne skulle hente data i min tabel ud fra en
speciel bruger.. det er en "ret profil" jeg har gang i
Jeg får ingen fejl, men heller ingen variabler udskrevt, jeg er ved at at
både session og database informationen er korrekt, for både session virker
og jeg bruger database til at logge ind med..

<?php
include "config.php";
mysql_connect($mysql_host, $mysql_user, $mysql_pw);
mysql_select_db($mysql_db);

$query = mysql_query("SELECT * FROM bruger WHERE '$_SESSIOn[brugernavn]' =
brugernavn ") or print mysql_error();
while($r = mysql_fetch_array($query)) {
$id = $r["id"];
$navn = $r["brugernavn"];
$password = $r["password"];
$email = $r["email"];
$alder = $r["alder"];
$hjemmeside = $r["hjemmeside"];
}
?>
<form method="post" action="opdater.php">
<input type="hidden" name="id" value="$id">
<table width="300">
<tr>
<td width="300" colspan="2"><b>Ret oplysninger</b></td>
</tr><tr>
<td width="150">Navn:</td>
<td width="150"><? echo "$navn" ?></td>
</tr><tr>
<td width="150">Kodeord:</td>
<td width="150"><input type="text" name="kodeord" value="<? echo
"$password"; ?>" style="width: 152px"></td>
</tr><tr>
<td width="150">Email:</td>
<td width="150"><input type="text" name="email" value="<? echo "$email"; ?>"
style="width: 152px"></td>
</tr><tr>
<td width="150">Alder:</td>
<td width="150"><input type="text" name="alder" value="<? echo "$alder"; ?>"
style="width: 152px"></td>
</tr><tr>
<td width="150">Hjemmeside:</td>
<td width="150"><input type="text" name="hjemmeside" value="<? echo
"$hjemmeside"; ?>" style="width: 152px"></td>
</tr><tr>
<td width="300" colspan="2" align="right"><input type="submit" name="update"
value="Udfør"></td>
</tr>
</table>
</form>

Hvor ligger fejlen?

Christoffer



 
 
jari@it.dk (22-03-2005)
Kommentar
Fra : jari@it.dk


Dato : 22-03-05 22:27

On Tue, 22 Mar 2005 18:33:46 +0100, "Christoffer"
<christoffer@buur.info> wrote:

<KLIP EN MASSE>

$query = mysql_query("SELECT * FROM bruger WHERE
'$_SESSIOn[brugernavn]' = brugernavn ") or print mysql_error();

Prøv at sætte { } rundt om variablerne i din query

--
Thomas

Kim Andersen (23-03-2005)
Kommentar
Fra : Kim Andersen


Dato : 23-03-05 11:24

> $query = mysql_query("SELECT * FROM bruger WHERE
> '$_SESSIOn[brugernavn]' = brugernavn ") or print mysql_error();
>
> Prøv at sætte { } rundt om variablerne i din query
>

Hvad med $_SESSIOn, det skal være $_SESSION.

/Kim



Ruben Hesselbæk (23-03-2005)
Kommentar
Fra : Ruben Hesselbæk


Dato : 23-03-05 12:09


"Christoffer" <christoffer@buur.info> wrote in message
news:42405701$0$73726$edfadb0f@dread14.news.tele.dk...

--- cut ---

> $query = mysql_query("SELECT * FROM bruger WHERE '$_SESSIOn[brugernavn]' =
> brugernavn ") or print mysql_error();

prøv med
$text = sprintf("select * from bruger where brugernavn = %s",
$_SESSION['brugernavn']);
$query = mysql_query($text) or print mysql_error();

/Ruben


--- cut ---



Johan Holst Nielsen (23-03-2005)
Kommentar
Fra : Johan Holst Nielsen


Dato : 23-03-05 13:00

Ruben Hesselbæk wrote:
> "Christoffer" <christoffer@buur.info> wrote in message
> news:42405701$0$73726$edfadb0f@dread14.news.tele.dk...
>
> --- cut ---
>
>
>>$query = mysql_query("SELECT * FROM bruger WHERE '$_SESSIOn[brugernavn]' =
>>brugernavn ") or print mysql_error();
>
>
> prøv med
> $text = sprintf("select * from bruger where brugernavn = %s",
> $_SESSION['brugernavn']);
> $query = mysql_query($text) or print mysql_error();

Er dårlig praksis i PHP at brige (s)printf unødvendig - og så mangler
der også ' rundt om brugernavnet :) Da jeg formoder det er en streng.

http://zend.com/zend/art/mistake.php

Bør blot være

$text = "select * from bruger where brugernavn =
'".$_SESSION['brugernavn']."'";
$query = mysql_query($text) or die(mysql_error());

mvh
Johan

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste