Avatar billede webstuff Nybegynder
28. november 2005 - 10:51 Der er 12 kommentarer og
1 løsning

Fejl i ret profil side!!

<?php
include "inc/header.php";
?>
<td width="496" valign="top" bgcolor="#728CAD">
<b>Ret Bruger:</b><hr>
if($_SESSION["user"] == true){
$brugernavn = $_SESSION["user"];
$pass = $_POST["pass"];
$email = $_POST["email"];
$hjemmeside = $_POST["hjemmeside"];
$tekst = $_POST["tekst"];
$id = $_POST["id"];
if(isset($user && $pass)){
mysql_query("UPDATE users set pass = '$pass', email = '$email', hjemmeside = '$hjemmeside',  tekst = '$tekst' WHERE id = '$id'");
header("location: user_profil.php");
} else {
$brugernavn = $_SESSION["user"];
$hent = mysql_query("SELECT * FROM users where brugernavn = '$brugernavn'");
while ($row = mysql_fetch_array($hent)) {
?>
<form method="post" action="<? echo $PHP_SELF; ?>">
<b>Kodeord:</b><br>
<input type="password" name="pass" maxlenght="15" value="<? echo ''.$row['pass'].''; ?>"><br>
<b>Email:</b><br>
<input type="text" name="email" maxlenght="25" value="<? echo ''.$row['email'].''; ?>"><br>
<b>Hjemmeside:</b><br>
<input type="text" name="hjemmeside" maxlenght="25" value="<? echo ''.$row
['hjemmeside'].''; ?>"><br>
<b>Profiltekst:</b><br>
<textarea name="tekst" cols="40" rows="5"><? echo ''.$row['tekst'].''; ?></textarea><br>
<input name="id" type="hidden" value="<? echo $row['id']; ?>">
<input type="submit" value="Ret">
</form>
<?php
}} else {
echo "Forkert brugernavn eller kodeord";
}
include "inc/bottom.php";
?>

Her er der fejl i linje 35...
Det er en side til at rette sine bruger oplysninger..
Avatar billede webstuff Nybegynder
28. november 2005 - 10:51 #1
Får denne fejl:

Parse error: parse error, unexpected '}' in /srv/www/htdocs/web1423/html/user_ret.php on line 35
Avatar billede showsource Seniormester
28. november 2005 - 10:52 #2
</form>
<?php
}
} else {
Avatar billede webstuff Nybegynder
28. november 2005 - 10:55 #3
Den viser stadig samme fejl!!
Avatar billede showsource Seniormester
28. november 2005 - 10:59 #4
du har ikke overvejet muligheden af at en bruger kunne finde på at poste sin egen form, så password blev ændret for andre brugere?

Prøv at ændre
while ($row = mysql_fetch_array($hent)) {
til
$row = mysql_fetch_array($hent);

og stadig

</form>
<?php
}
} else {
Avatar billede webstuff Nybegynder
28. november 2005 - 11:00 #5
ja okay.. det var lige en bommert..
men den viser stadig samme fejl!! :-(
Avatar billede showsource Seniormester
28. november 2005 - 11:05 #6
hmm, du har en masse "fejlkode" i dit script.
Ikke at det kan virke, men brug gerne isset() og $_POST m.m. til dine variabler.
Og du laver en header() midt i det hele?
Avatar billede webstuff Nybegynder
28. november 2005 - 12:51 #7
nu har jeg prøvet at lave en ny.. og den virker og henter de rigtige oplysninger..
Men når jeg trykker "Ret" så skriver den "Oplysnigerne er rettet" men de er _IKKE_ rettet!!
#############################################################################
<?
include "inc/config.php";
include "inc/header.php";
?>
<td width="496" valign="top" bgcolor="#728CAD">
<b>Ret Oplysninger:</b><hr>
<?
if($_SESSION["user"] == true){
      $pass = $_POST["pass"];
      $email = $_POST["email"];
      $hjemmeside = $_POST["hjemmeside"];
      $teks = $_POST["tekst"];
      $id = $_POST["id"];
  if(empty($pass)){
      $user = $_SESSION["user"];
      $hent = mysql_query("SELECT * FROM users where user = '$user'");
      $vis = mysql_fetch_array($hent);
?>
<form method="post" action="<? echo $PHP_SELF; ?>">
  <b>Kodeord:</b><br>
      <input type="text" name="pass" value="<? echo $vis["pass"]; ?>"><br>
  <b>Email:</b><br>
      <input type="text" name="email" value="<? echo $vis["email"]; ?>"><br>
  <b>Hjemmeside:</b><br>
      <input type="text" name="hjemmeside" value="<? echo $vis["hjemmeside"]; ?>"><br>
  <b>Profil tekst:</b><br>
      <textarea name="tekst" rows="5" cols="24"><? echo $vis["tekst"]; ?></textarea><br>
      <input type="hidden" value="<? echo $vis["id"]; ?>">
  <input type="submit" value="Ret">
</form>
<?
} else { //ret oplysningner
mysql_query("UPDATE users set pass = '$pass', email = '$email', hjemmeside = '$hjemmeside',  tekst = '$tekst' WHERE id = '$id'");
echo "Oplysninger er rettet";
}
} else {
echo "Forkert Brugernavn eller kodeord";
}
include "inc/bottom.php";
?>
################################################################################

Det er sikkert mig der har lavet en eller anden tanketorsk igen!! :-?
Avatar billede showsource Seniormester
28. november 2005 - 13:00 #8
jahh, ser lidt bedre ud nu!

Du bruger
$teks øverst, men $tekst i din insert

Og når du tester, så brug altid
mysql_query(blablabla) or die (mysql_error());

Og tilføj så lige WHERE id = '$id' AND user = '$_SESSION[user]'

som mininmum.
Avatar billede webstuff Nybegynder
28. november 2005 - 13:04 #9
den opdaterer stadig ikke noget..
den udskriver "Oplysninger er rettet"
men de bliver ikke rettet!?
Avatar billede showsource Seniormester
28. november 2005 - 13:30 #10
Du mangler name i dit hiddenfelt
<input type="hidden" name="id" value="<? echo $vis["id"]; ?>">
Avatar billede webstuff Nybegynder
28. november 2005 - 13:36 #11
det var der fejlen lå.. :-D
Smider du et svar??
Avatar billede showsource Seniormester
28. november 2005 - 13:38 #12
joohhh, kik også lige her:
http://www.eksperten.dk/artikler/190
Avatar billede webstuff Nybegynder
28. november 2005 - 13:57 #13
okay.. jeg kigger!! :-D
Tak for hjælpen!!
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