kurt0015
16 July 2006, 23:01
Ik heb dus rond allerlei gratis scripts die je op het internet kon vinden een systeem gebouwd waardoor het erg veel lijkt op een cms. Maar ik heb dus in de database 3 rije toegevoegd zodat ik in de database ook de website, pc configuratie en de avatar url kan opslaan. Deze moeten natuurlijk ingevuld kunnen worden via de useroptions en opgeslagen en aangepast kunnen worden. Er was van het script dat ik afhaalde al zo'n systeem voor wachtwoorden enzo te wijzigen. Hier heb ik het proberen bij te voegen.
hier is mijn php code:
<?php
// ##### MAIN SCRIPT #####
function content() {
echo "<div class=\"titel\">Mijn Account › Gebruikeropties</div><br />";
include_once('incl/account.php');
echo "<br />";
echo "<div class=\"inhoud\">";
###################################
## PHPMYLOGON: A LOGIN SYSTEM ##
## (c) 2006 Jorik Berkepas ##
## Under the GNU GPL license ##
## helpdesk90@gmail.com ##
###################################
// Page for changing options by user (own options from user)
include_once("config.php");
include_once("lang/lang_".$lang.".php");
$pml_title = $site_name;
include_once("htmltop.php");
include_once("connect.php");
// Login required
require_once("safe.php");
if(isset($_POST['submit'])) {
if(preg_match("/^[A-Z0-9._%-]+@[A-Z0-9._%-]+\.[A-Z]{2,6}$/i", $_POST['email'])) {
if($_POST['pass1'] != "") {
// Changepassword
$sql = "SELECT password FROM `".$db_tbl."` WHERE id='".$_SESSION['user_id']."'";
$query = mysql_query($sql);
$row = mysql_fetch_object($query);
$dbpass = htmlspecialchars($row->password);
if($dbpass == md5($_POST['pasnow'])) {
if($_POST['pass1'] == $_POST['pass2']) {
$newpass = md5($_POST['pass1']);
$sql = "UPDATE `".$db_tbl."` SET mail='".$_POST['email']."',password='".$newpass."' WHERE id='".$_SESSION['user_id']."'";
$query = mysql_query($sql);
if($query == TRUE) {
echo $useropt_change;
if(isset($_COOKIE['user_password'])) {
setcookie("user_password", $newpass, time() + 365 * 86400);
}
}else{
echo $error;
}
}else{
echo $useropt_passerr;
}
}else{
echo $useropt_nowpasserr;
}
}else{
// Just change mail
$sql = "UPDATE `".$db_tbl."` SET mail='".$_POST['email']."' WHERE id='".$_SESSION['user_id']."'";
$query = mysql_query($sql);
if($query == TRUE) {
echo $useropt_mailchange;
}else{
echo $error;
}
}
}else{
echo $useropt_mailfalse;
}
}
elseif(isset($_GET['resetcookies'])){
// Reset cookie code
$sql = "UPDATE `".$db_tbl."` SET cookie_pass = '' WHERE id = '".$_SESSION['user_id']."'";
$query = mysql_query($sql);
if($query == TRUE) {
echo $useropt_resetok;
}else{
echo $error;
}
}else{
// Form
$sql = "SELECT name,mail,website,pc_config,avatar FROM `".$db_tbl."` WHERE id='".$_SESSION['user_id']."'";
$query = mysql_query($sql);
$row = mysql_fetch_object($query);
$naam = htmlspecialchars($row->name);
$email = htmlspecialchars($row->mail);
// Begin extra Toegevoegd
$website = htmlspecialchars($row->website);
$pc_config = htmlspecialchars($row->pc_config);
$avatar = htmlspecialchars($row->avatar);
// Einde Extra Toegevoegd
?>
<form method="post" action="useroptions.php">
<table>
<tr>
<td><?= $useropt_username ?>:</td><td><b><?= $naam ?></b> <small>(<?= $useropt_usernamenote ?>)</small></td>
</tr>
<tr>
<td><?= $useropt_mail ?>:</td><td><input type="text" name="email" value="<?= $email ?>" /></td>
</tr>
<tr>
<td><?= $useropt_nowpass ?>:</td><td><input type="password" name="pasnow" /> <small>(<?= $useropt_nowpassnote ?>)</small></td>
</tr>
<tr>
<td><?= $useropt_newpass ?>:</td><td><input type="password" name="pass1" /> <small>(<?= $useropt_newpassnote ?>)</small></td>
</tr>
<tr>
<td><?= $useropt_repeat ?>:</td><td><input type="password" name="pass2" /></td>
</tr>
<!-- Begin Extra Toegevoegd -->
<tr>
<td><?= $useropt_website ?>:</td><td><input type="text" name="website" value="<?= $website ?>" /></td>
</tr>
<tr>
<td><?= $useropt_pc_config ?>:</td><td><textarea name=\"pc_config\" ROWS=\"5\" COLS=\"30\"value="<?= $pc_config ?>"></TEXTAREA></td>
</tr>
<tr>
<td><?= $useropt_avatar ?>:</td><td><input type="text" name="avatar" value="<?= $avatar ?>" /> <small>(<?= $useropt_avatarnote ?>)</small></td>
</tr>
<!-- Einde Extra Toegevoegd -->
<tr>
<td></td><td><input type="submit" name="submit" value="<?= $useropt_save ?>" /></td>
</tr>
</table>
</form>
<?= $useropt_resetcookies ?><br />
<a href="useroptions.php?resetcookies=true"><?= $useropt_reset ?></a>
<?
}
include_once("htmlbottom.php");
echo "</div>";
// ### END MAIN PAGES ###
}
// ### REQUIRE PAGE BUILDING ###
include_once('page_building.php');
?>
Ik heb aangegeven op welke plaatsen ik extra toevoegingen heb gedaan. Hopelijk kan iemand mij hier helpen die page_building.php zorgt gewoon dat er nog wa functions worden gemaakt en de layout uiteindelijk geinclude word. Even erbij vermelden als ik een ander veld invul dat ik dus zelf heb toegevoegd dan zegt hij het volgende ' Je e-mailadres is succesvol gewijzigd.' alle foutmeldingen worden wel uit een taalbestandje gehaalt wat het wel net iets moeilijker maakt.
hier is mijn php code:
<?php
// ##### MAIN SCRIPT #####
function content() {
echo "<div class=\"titel\">Mijn Account › Gebruikeropties</div><br />";
include_once('incl/account.php');
echo "<br />";
echo "<div class=\"inhoud\">";
###################################
## PHPMYLOGON: A LOGIN SYSTEM ##
## (c) 2006 Jorik Berkepas ##
## Under the GNU GPL license ##
## helpdesk90@gmail.com ##
###################################
// Page for changing options by user (own options from user)
include_once("config.php");
include_once("lang/lang_".$lang.".php");
$pml_title = $site_name;
include_once("htmltop.php");
include_once("connect.php");
// Login required
require_once("safe.php");
if(isset($_POST['submit'])) {
if(preg_match("/^[A-Z0-9._%-]+@[A-Z0-9._%-]+\.[A-Z]{2,6}$/i", $_POST['email'])) {
if($_POST['pass1'] != "") {
// Changepassword
$sql = "SELECT password FROM `".$db_tbl."` WHERE id='".$_SESSION['user_id']."'";
$query = mysql_query($sql);
$row = mysql_fetch_object($query);
$dbpass = htmlspecialchars($row->password);
if($dbpass == md5($_POST['pasnow'])) {
if($_POST['pass1'] == $_POST['pass2']) {
$newpass = md5($_POST['pass1']);
$sql = "UPDATE `".$db_tbl."` SET mail='".$_POST['email']."',password='".$newpass."' WHERE id='".$_SESSION['user_id']."'";
$query = mysql_query($sql);
if($query == TRUE) {
echo $useropt_change;
if(isset($_COOKIE['user_password'])) {
setcookie("user_password", $newpass, time() + 365 * 86400);
}
}else{
echo $error;
}
}else{
echo $useropt_passerr;
}
}else{
echo $useropt_nowpasserr;
}
}else{
// Just change mail
$sql = "UPDATE `".$db_tbl."` SET mail='".$_POST['email']."' WHERE id='".$_SESSION['user_id']."'";
$query = mysql_query($sql);
if($query == TRUE) {
echo $useropt_mailchange;
}else{
echo $error;
}
}
}else{
echo $useropt_mailfalse;
}
}
elseif(isset($_GET['resetcookies'])){
// Reset cookie code
$sql = "UPDATE `".$db_tbl."` SET cookie_pass = '' WHERE id = '".$_SESSION['user_id']."'";
$query = mysql_query($sql);
if($query == TRUE) {
echo $useropt_resetok;
}else{
echo $error;
}
}else{
// Form
$sql = "SELECT name,mail,website,pc_config,avatar FROM `".$db_tbl."` WHERE id='".$_SESSION['user_id']."'";
$query = mysql_query($sql);
$row = mysql_fetch_object($query);
$naam = htmlspecialchars($row->name);
$email = htmlspecialchars($row->mail);
// Begin extra Toegevoegd
$website = htmlspecialchars($row->website);
$pc_config = htmlspecialchars($row->pc_config);
$avatar = htmlspecialchars($row->avatar);
// Einde Extra Toegevoegd
?>
<form method="post" action="useroptions.php">
<table>
<tr>
<td><?= $useropt_username ?>:</td><td><b><?= $naam ?></b> <small>(<?= $useropt_usernamenote ?>)</small></td>
</tr>
<tr>
<td><?= $useropt_mail ?>:</td><td><input type="text" name="email" value="<?= $email ?>" /></td>
</tr>
<tr>
<td><?= $useropt_nowpass ?>:</td><td><input type="password" name="pasnow" /> <small>(<?= $useropt_nowpassnote ?>)</small></td>
</tr>
<tr>
<td><?= $useropt_newpass ?>:</td><td><input type="password" name="pass1" /> <small>(<?= $useropt_newpassnote ?>)</small></td>
</tr>
<tr>
<td><?= $useropt_repeat ?>:</td><td><input type="password" name="pass2" /></td>
</tr>
<!-- Begin Extra Toegevoegd -->
<tr>
<td><?= $useropt_website ?>:</td><td><input type="text" name="website" value="<?= $website ?>" /></td>
</tr>
<tr>
<td><?= $useropt_pc_config ?>:</td><td><textarea name=\"pc_config\" ROWS=\"5\" COLS=\"30\"value="<?= $pc_config ?>"></TEXTAREA></td>
</tr>
<tr>
<td><?= $useropt_avatar ?>:</td><td><input type="text" name="avatar" value="<?= $avatar ?>" /> <small>(<?= $useropt_avatarnote ?>)</small></td>
</tr>
<!-- Einde Extra Toegevoegd -->
<tr>
<td></td><td><input type="submit" name="submit" value="<?= $useropt_save ?>" /></td>
</tr>
</table>
</form>
<?= $useropt_resetcookies ?><br />
<a href="useroptions.php?resetcookies=true"><?= $useropt_reset ?></a>
<?
}
include_once("htmlbottom.php");
echo "</div>";
// ### END MAIN PAGES ###
}
// ### REQUIRE PAGE BUILDING ###
include_once('page_building.php');
?>
Ik heb aangegeven op welke plaatsen ik extra toevoegingen heb gedaan. Hopelijk kan iemand mij hier helpen die page_building.php zorgt gewoon dat er nog wa functions worden gemaakt en de layout uiteindelijk geinclude word. Even erbij vermelden als ik een ander veld invul dat ik dus zelf heb toegevoegd dan zegt hij het volgende ' Je e-mailadres is succesvol gewijzigd.' alle foutmeldingen worden wel uit een taalbestandje gehaalt wat het wel net iets moeilijker maakt.