profielsysteem bouwen
webbiexl - 21/04/2005 11:28 (laatste wijziging 22/04/2005 12:21)
PHP interesse
hey ik wil op het ledensysteem Murfy ( http://sitemast...amp;id=450 ) een profielsysteem hebben. moet nog best wel wat leren over php, maar wil het wel zelf gaan bouwen.
wat ik erin wil hebben is
ledenlijst (geen probleem dat moet wel lukken, alleen een pagina systeem zou een probleem kunnen worden maar dat zoek ik wel op)
profielpagina (is ook geen probleem)
wijzigpagina
bij de wijzigpagina komt dus t probleem, ik heb dus geen id hoe ik moet beginnen. het id is dat je allemaal die textarea's ziet (duh) met daarin wat is ingevuld, maar als er iets niet is ingevuld laten zien [niet ingevuld] of [ - ]. nou wil ik dus in de tabel alle defaults op null houden.
dus eigenlijk krijg je dan ongeveer dit (met in aanmelden.php alleen Gebruikersnaam, naam, email, ww en ww2 verplicht ingevuld)
<? //mysqlconnectie, config include, inlogsessie check etc
?>
<form method="POST" action="<? echo $PHP_SELF ?>">
<input type="hidden" name="submit" value="1">
Naam:<br>
<input type="text" name="naam" size="30" value="<? echo $object->naam ?>"> *<br>
Email adres:<br>
<input type="text" name="email" size="30" value="<? echo $object->email ?>"> *<br>
Leeftijd:<br>
<input type="text" name="leeftijd" size="30" value="
<? if($object->leeftijd == 0){
echo " [ - ] ";
}
else {
echo $object->leeftijd
}
?>"><br>
<? //iets na de txtarea's ?>
<? //mysqlconnectie, config include, inlogsessie check etc
?>
<form method="POST" action="
<? echo $PHP_SELF ?> ">
<input type="hidden" name="submit" value="1">
Naam:<br>
<input type="text" name="naam" size="30" value="
<? echo $object -> naam ?> "> *<br>
Email adres:<br>
<input type="text" name="email" size="30" value="
<? echo $object -> email ?> "> *<br>
Leeftijd:<br>
<input type="text" name="leeftijd" size="30" value="
<? if ( $object -> leeftijd == 0 ) {
}
else {
}
?> "><br>
<? //iets na de txtarea's ?>
zeg even of dit bovenstaande klopt
volgende is dat ik wil dat de gebruiker zijn password in moet voeren om de wijzigingen door te laten gaan
hoe moet ik dat doen???
ik ben nog aan het leren denk daar aub aan!:cool:
8 antwoorden
Gesponsorde links
leendertW - 21/04/2005 11:37
PHP beginner
- Gebruik SUPERGLOBALS ( dus $PHP_SELF wordt $_SERVER[' PHP_SELF' ]
- script netter
- gebruik musql_fetch_assoc ipv mysql_fetch_object
Maar als jij van het veld leeftijd default op 0 heb staan moet dit goed zijn offuhh....?
Ik snap niet helemaal wat je wilt!
webbiexl - 21/04/2005 13:10 (laatste wijziging 21/04/2005 13:28)
PHP interesse
dat is misschien omdat mn post nog ni helemaal compleet was
ledenlijst gemaakt
<?php
include('config.php');
if(!isset($_SESSION['gebruiker'])) {
header("Location: login.php");
}
if(!$id){
$query = mysql_query("SELECT * FROM leden");
$result = mysql_num_rows($query);
if(!$result){
echo "We hebben nog geen leden...";
}
else{
?>
<table border="0" cellpadding="0" cellspacing="0" width="350">
<tr>
<td width="50">ID</td>
<td width="100">Gebruikersnaam</td>
<td width="100">Naam</td>
<td width="50">Leeftijd</td>
<td width="50">M/V</td>
</tr>
<?
while($object = mysql_fetch_assoc($query)){
echo "<tr>
<td width="50">$object->id</td>
<td width="100"><a href=\"?id=$object->id \">$object->naam</a></td>
<td width="100">$object->naam</td>
<td width="50">$object->leeftijd</td>
<td width="50">$object->geslacht</td>
</tr>";
}
}
}
?>
</table>
<?php
include ( 'config.php' ) ;
if ( ! isset ( $_SESSION [ 'gebruiker' ] ) ) { header ( "Location: login.php" ) ; }
if ( ! $id ) {
if ( ! $result ) {
echo "We hebben nog geen leden..." ; }
else {
?>
<table border="0" cellpadding="0" cellspacing="0" width="350">
<tr>
<td width="50">ID</td>
<td width="100">Gebruikersnaam</td>
<td width="100">Naam</td>
<td width="50">Leeftijd</td>
<td width="50">M/V</td>
</tr>
<?
<td width=" 50 ">$object->id </td>
<td width=" 100 "><a href=\" ?id=$object->id \" >$object->naam </a></td>
<td width=" 100 ">$object->naam </td>
<td width=" 50 ">$object->leeftijd </td>
<td width=" 50 ">$object->geslacht </td>
</tr>" ;
}
}
}
?>
</table>
is de code correct
leendertW - 21/04/2005 15:03
PHP beginner
while($object = mysql_fetch_assoc($query)){
echo "<tr>
<td width="50">$object->id</td>
<td width="100"><a href=\"?id=$object->id \">$object->naam</a></td>
<td width="100">$object->naam</td>
<td width="50">$object->leeftijd</td>
<td width="50">$object->geslacht</td>
</tr>";
}
<td width=" 50 ">$object->id </td>
<td width=" 100 "><a href=\" ?id=$object->id \" >$object->naam </a></td>
<td width=" 100 ">$object->naam </td>
<td width=" 50 ">$object->leeftijd </td>
<td width=" 50 ">$object->geslacht </td>
</tr>" ;
}
Dit gebruik je. Dit kan niet omdat je dit ->naam gebruikt en dat moet met mysql_fetch_assoc $object['naam'] zijn.
webbiexl - 21/04/2005 15:47
PHP interesse
o gek dat werkte vorige keer wel dat ik t gebruikte
weet je ook nog antwoord op mijn eigenlijke vraag (verifiëren van het wijzigen mbv eigen password in wijzigpagina)
b4nkr0bz0r - 22/04/2005 08:44
PHP gevorderde
je vraagt gewoon password op (met SELECT)
en dan kijk je of oude password overheen komt met die van de registratie, en dan vergelijk je die 2 nieuwe of die overheen komen, en dan UPDATE je het profiel.
webbiexl - 22/04/2005 09:01 (laatste wijziging 22/04/2005 11:21)
PHP interesse
dus dit eigenlijk
<tr>
<td>Wachtwoord:</td>
<td><input name="wachtwoord" type="password" id="wachtwoord" size="35"></td>
</tr>
<?
$checkp = mysql_result(mysql_query("SELECT * FROM leden WHERE wachtwoord='".md5($_POST['wachtwoord'])."'"),0);
if($_POST['wachtwoord'] == "") {
$error[] = 'Vul alle velden in!';
}
if($_POST['wachtwoord'] != "" $object['gebruikersnaam'] != "" && $checkp == 0) {
$error[] = 'Het ingevoerde wachtwoord is niet correct.';
}
if($_POST['wachtwoord'] == "".md5($_POST['wachtwoord'])."") {
mysql_query("UPDATE members SET naam='$naam', email='$email', geboortedatum = '$geboortedatum', homepage = '$homepage', hobbys = '$hobbys', favodrankje = '$drank', favoartiest = '$artiest', favofilm = '$film', geslacht = '$geslacht', relatie = '$relatie', pm = '$pm', woonplaats = '$woonplaats' WHERE memberid = '$mid'") or die(mysql_error());
echo "Gegevens zijn succesvol opgeslagen...";
} ?>
<tr>
<td>Wachtwoord:</td>
<td><input name="wachtwoord" type="password" id="wachtwoord" size="35"></td>
</tr>
<?
if ( $_POST [ 'wachtwoord' ] == "" ) {
$error [ ] = 'Vul alle velden in!' ;
}
if ( $_POST [ 'wachtwoord' ] != "" $object [ 'gebruikersnaam' ] != "" && $checkp == 0 ) {
$error [ ] = 'Het ingevoerde wachtwoord is niet correct.' ;
}
if ( $_POST [ 'wachtwoord' ] == "" . md5 ( $_POST [ 'wachtwoord' ] ) . "" ) { mysql_query ( "UPDATE members SET naam='$naam ', email='$email ', geboortedatum = '$geboortedatum ', homepage = '$homepage ', hobbys = '$hobbys ', favodrankje = '$drank ', favoartiest = '$artiest ', favofilm = '$film ', geslacht = '$geslacht ', relatie = '$relatie ', pm = '$pm ', woonplaats = '$woonplaats ' WHERE memberid = '$mid '" ) or
die ( mysql_error ( ) ) ; echo "Gegevens zijn succesvol opgeslagen..." ; } ?>
ik heb met behulp van de login.php van het systeem de code geschreven verbeter me ayb als t fout is en leg uit waarom plz
leendertW - 22/04/2005 11:35 (laatste wijziging 22/04/2005 11:36)
PHP beginner
f($_POST['wachtwoord'] == "".md5($_POST['wachtwoord'])."") {
mysql_query("UPDATE members SET naam='$naam', email='$email', geboortedatum = '$geboortedatum', homepage = '$homepage', hobbys = '$hobbys', favodrankje = '$drank', favoartiest = '$artiest', favofilm = '$film', geslacht = '$geslacht', relatie = '$relatie', pm = '$pm', woonplaats = '$woonplaats' WHERE memberid = '$mid'") or die(mysql_error());
echo "Gegevens zijn succesvol opgeslagen...";
f
( $_POST [ 'wachtwoord' ] == "" . md5 ( $_POST [ 'wachtwoord' ] ) . "" ) { mysql_query ( "UPDATE members SET naam='$naam ', email='$email ', geboortedatum = '$geboortedatum ', homepage = '$homepage ', hobbys = '$hobbys ', favodrankje = '$drank ', favoartiest = '$artiest ', favofilm = '$film ', geslacht = '$geslacht ', relatie = '$relatie ', pm = '$pm ', woonplaats = '$woonplaats ' WHERE memberid = '$mid '" ) or
die ( mysql_error ( ) ) ; echo "Gegevens zijn succesvol opgeslagen..." ;
je gebruikt hier GEEN SUPERGLOBALS dus $_POST. dus SET naam ='$naam' , wordt SET naam = ' " .$_POST['naam']."',
webbiexl - 22/04/2005 11:51
PHP interesse
kneem aan bij alles he? maar is het script in orde kan ik door dit stukje mn wijziging in een profiel bevestigen/ laten zien dat ik het ben die de zooi veranderd?
Gesponsorde links
Dit onderwerp is gesloten .