Hallo,

Tijdje geleden alweer dat ik hier ben geweest op dit forum.
Mijn vraag is hoe kan ik een database veld bewerken met een formulier
ik heb al een goed beveiligd login script met profiel pagina alleen
zou het erg handig zijn om deze ook te kunnen veranderen zoals password in de db.

Voorbeeld van het script (voor de variabellen):

login.php:
$_SESSION["valid_user"] = $_POST["username"];

Profile.php:
echo "<p>Username: " . $_SESSION["valid_user"];

Hoe kan ik bijvoorbeeld op een nieuwe pagina deze veld veranderen?
Las iets over UPDATE funktie maar eerlijk kom ik er niet helemaal uit
hoop dat iemand mij hierbij wilt/kan helpen?
Begin eens met het formulier te maken.
Als dat verstuurd wordt dan komt de UPDATE query.
Tot nu toe heb ik dit en als ik deze run krijg ik een foutmelding die luidt

Parse error: syntax error, unexpected $end in /var/www/vhosts/(geen reclame)/httpdocs/edit.php on line 28:

<?php

session_start();

if (!$_SESSION["valid_user"])
{
// User not logged in, redirect to login page
Header("Location: login.php");
}

echo "Changing your profile information.";
if(isset($_POST['change_email'])){
$sql=mysql_query("UPDATE config SET waarde='".$_POST['email']."' WHERE what='email'");
if($sql) {
echo "Email adres is veranderd.";
}


?> <br>Changing email<input type ='text' name='titel' value='<?=$config_titel?>'>
<input type='submit' name='change_emaill' value='Change emaill'><br><input type='reset' value='Reset'>


<?php

echo "<p><a href=\"profile.php\">Click here to turn back to your profile!</a></p>";

?>
<?php
session_start();

if (!$_SESSION["valid_user"])
{
header("Location: login.php");
}

if($_SERVER["REQUEST_METHOD"] == 'POST')
{
//formulier is gepost, update
}
else
{
//formulier weergeven
}
?>
Ergens een } vergeten waarschijnlijk.

UPDATE config SET waarde='.......' WHERE what='email'
Velden die waarde en what heten? Zeer vreemd.
- SanThe - op 15/03/2011 22:12:18

Ergens een } vergeten waarschijnlijk.

UPDATE config SET waarde='.......' WHERE what='email'
Velden die waarde en what heten? Zeer vreemd.


Geloof dat ik het dan te letterlijk heb overgenomen deze moet dan dus geen waarde heten is dit een veld in de database? Dat is toch email?

(Zie het al dit is inderdaad een database veld dit was van een andere voorbeeld script die ik gelezen had even goed terugzoeken hoe ik dit weer netjes krijg. Bedankt voor de hulp.)


Toevoeging op 16/03/2011 00:32:33:

Het werkt bijna nog niet helemaal hij veranderd nog niks? Iemand enig idee hoe ik dit oplos?


<?php

session_start();

if (!$_SESSION["valid_user"])
{
// User not logged in, redirect to login page
Header("Location: login.php");
}
echo "Changing your profile information.";
echo "<p>Email: " . $_SESSION["valid_email"];
if(isset($_POST['change_email'])){
$sql=mysql_query("UPDATE dbUsers SET valid_email='".$_POST['email']."' WHERE what='email'");
if($sql) {
echo "Email adres is veranderd.";
}}


?>
<form action='' method='post'>
<br>Changing email<input type ='text' name='titel' value='<?=$config_titel?>'><br>
<input type='submit' name='change_emaill' value='Change emaill'><input type='reset' value='Reset'>
</form>

<?php

echo "<p><a href=\"profile.php\">Click here to turn back to your profile!</a></p>";

?>

Reageren