PDA

Volledige versie bekijken : menu in script


bkersten
%Europe/Berlin %765 %2006, 19:21
Hoi,

Ik heb een script waar je prive berichten naar elkaar kan sturen in het loginsysteem.
Dit werkt allemaal perfect.

Maar nu wil ik het menu wat op lijn 37 tot lijn 40 staat, op elke 'pagina' hebben.
Dus als je op 'Nieuw bericht' drukt, dan ga je naar een ander gedeelte in het script, en ik zou willen dat op dat gedeelte ook hetzelfde menu kwam te staan.

Maar ik heb vanalles geprobeert maar ik krijg het niet voor mekaar om het menu overal weer te laten geven.

Weet iemand hoe dit wel mogelijk is?

Hieronder het script:

<?
session_start();
if(session_is_registered('memberid')){
require("config.php");
require("ip/block.php");

// Verwijder deze comment en de onderstaande regel als je een eigen stylesheet gebruikt...
echo "<link rel=\"stylesheet\" content=\"text/css\" href=\"style.css\">";
?>

<script language="JavaScript" type="text/javascript">
function verwijder(bericht, url)
{
if(confirm(bericht)) location.href = url;
}
function icon(theicon)
{
document.formulier.bericht.value += ""+theicon;
document.formulier.bericht.focus();
}
</script>

<?
if(!$new AND !$send AND !$id AND !$deleteall AND !$delete AND !$block AND !$saveblock AND !$reply){
$query = mysql_query("SELECT * FROM priveberichten WHERE naar = '$memberid' ORDER BY id DESC");
$result = mysql_num_rows($query);

if(!$result){
echo "<b>Geen berichten gevonden.</b><br><br><br>";
}
else{
?>

<b><? echo $result ?> prive- berichten.</b><hr />
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="75%"">
<tr>
<td width="5%"><b>Gelezen</b></td>
<td width="10%"><b>Auteur</b></td>
<td width="10%"><b>Onderwerp</b></td>
<td width="10%"><b>Datum</b></td>
</tr>
<?
while($object = mysql_fetch_object($query)){
?>
<tr>
<td width="5%"><? if($object->gelezen){ echo "Ja"; } else{ echo "Nee"; } ?></td>
<td width="10%"><?
$**** = mysql_query("SELECT * FROM members WHERE memberid = '$object->van'");

while($you = mysql_fetch_object($****)){
$auteur = $you->naam;
}
echo $auteur;
?></td>
<td width="10%"><a href="?id=<? echo $object->id ?>"><? echo $object->onderwerp ?></a></td>
<td width="10%"><? echo $object->datum ?></td>
</tr>
<?
}
echo "</table><hr>";
}
?>

<img src="img/new.gif" /> <a href="?new=1">Nieuw bericht</a> <br />
<img src="img/delete.gif" /> <a href="javascript:verwijder('Weet je zeker dat je alle berichten in je inbox wilt verwijderen?','?deleteall=1')">Verwijder alle berichten</a><br />
<img src="img/block.gif" /> <a href="?block=1">Bloklijst</a>


<?
}
if($new){
if($reply){
$query = mysql_query("SELECT * FROM priveberichten WHERE id = '$reply'");

while($object = mysql_fetch_object($query)){
$object->onderwerp = str_replace("Re: ", "", $object->onderwerp);
$titel = "Re: $object->onderwerp";
$naar = $object->van;
}
}
?>

Berichten<br /><br>
<br />

<form action="?send=1" method="post" name="formulier" id="formulier">
Naar:
<input type="text" name="naar" size="5" value="<? echo $naar ?>" />
( <a href="profiel.php">Zoek member ID</a> )<br /><em>Vul hierboven niet de naam van het lid in, maar het ID.</em><br>
Onderwerp: <input type="text" name="onderwerp" size="20" maxlength="100" value="<? echo $titel ?>" />
<br />
<input type="button" style="font-weight: bold; width: 30px" value="B" onclick="javascript:icon(' ')" />
<input type="button" style="font-style: italic; width: 30px" value="I " onclick="javascript:icon(' ')" />
<input type="button" style="text-decoraton: underline; width: 30px" value="U" onclick="javascript:icon(' ')" />
<input type="button" style="font-family: Courier New" value="Code" onclick="javascript:icon(' ')" />
( <a href="ubb.html" target="_blank">UBB codes </a> )<br />
<textarea rows="7" name="bericht" cols="40"></textarea>
<br />
<a href="javascript:icon(';-)')"><img border="0" src="img/smiles/wink.gif" /></a><a href="javascript:icon(':-|')"><img border="0" src="img/smiles/unsure.gif" /></a><a href="javascript:icon(':-P')"><img border="0" src="img/smiles/tongue.gif" /></a><a href="javascript:icon(':-)')"><img border="0" src="img/smiles/smile.gif" /></a><a href="javascript:icon(':(')"><img border="0" src="img/smiles/sad.gif" /></a><a href="javascript:icon('%-)')"><img border="0" src="img/smiles/rolleyes.gif" /></a><a href="javascript:icon('|8|')"><img border="0" src="img/smiles/ph34r.gif" /></a><a href="javascript:icon(':-O')"><img border="0" src="img/smiles/ohmy.gif" /></a><a href="javascript:icon(':-@')"><img border="0" src="img/smiles/mad.gif" /></a><a href="javascript:icon(':-]')"><img border="0" src="img/smiles/laugh.gif" /></a><a href="javascript:icon(':-?')"><img border="0" src="img/smiles/huh.gif" /></a><a href="javascript:icon(':-\\')"><img border="0" src="img/smiles/dry.gif" /></a><a href="javascript:icon('8)')"><img border="0" src="img/smiles/cool.gif" /></a><a href="javascript:icon('8-/')"><img border="0" src="img/smiles/blink.gif" /></a><a href="javascript:icon(':-D')"><img border="0" src="img/smiles/biggrin.gif" /></a><br />
<input type="submit" value="Verstuur" />
<input type="reset" value="Wis velden" />
</p>
</form>

<?
}
if($send){

if(!$naar || !$onderwerp || !$bericht){
echo "Je hebt niet alle velden ingevuld.<br><br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
}
else{
$query = mysql_query("SELECT * FROM members WHERE memberid = '$memberid'");
$result = mysql_num_rows($query);

while($object = mysql_fetch_object($query)){
$ikblock = $object->blockpm;
$error = $object->pm;
$geblokkeerd = $object->blockpm;
}

if(strstr($ikblock,$naar)){
echo "De member waar je dit bericht naartoe wilt sturen heb je zelf geblokkeerd.<br><br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
}
else{

if(strstr($geblokkeerd,$memberid)){
echo "Deze member heeft je geblokkeerd voor het ontvangen van jou prive-berichten.<br><br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
}
else{

if(!$error){
echo "Deze member heeft ingesteld dat hij of zij geen privé- berichten wil ontvangen, je bericht is daarom niet verzonden.<br><br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
}
else{
if(!$result){
echo "Het ID waar je een bericht naar wil versturen, bestaat niet. Probeer het nog een keer.<br><br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
}
if($result){
$query = mysql_query("SELECT * FROM priveberichten WHERE naar = '$naar'");
$result = mysql_num_rows($query);

if($result > $maxpm-1){
echo "Deze member heeft het limiet van $maxpm privé- berichten overschreden, daarom kan dit privé- bericht niet verzonden
worden.<br><br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
}
else{

$query = mysql_query("SELECT * FROM members WHERE memberid = '$naar'");

while($object = mysql_fetch_object($query)){
$naar = $object->memberid;
$naarnaam = $object->naam;
$privmsg = $object->pm;
}

$query = mysql_query("SELECT * FROM members WHERE memberid = '$memberid'");

while($object = mysql_fetch_object($query)){
$van = $object->memberid;
}

$datum = date("d-m-Y \o\m\ H:i:s");

if($privmsg){
$query = mysql_query("INSERT INTO priveberichten (onderwerp,van,naar,datum,bericht,ip,gelezen) VALUES ('$onderwerp','$van','$naar','$datum','$bericht',' $REMOTE_ADDR','0')") or die (mysql_error());
echo "Je bericht is succesvol verzonden naar <b>$naarnaam</b><br>\n<br>\n<a href=\"priveberichten.php\">Terug naar je inbox</a>";
}
else{
echo "Deze member heeft deze functie uitgeschakeld en/of deze member bestaat niet.<br><br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
}
}
}
}
}
}
}
}
if($id){
$query = mysql_query("SELECT * FROM priveberichten WHERE naar = '$memberid' AND id = '$id'");
$result = mysql_num_rows($query);

if(!$result){

echo "Dit bericht bestaat niet.<br><br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
}
else{
mysql_query("UPDATE priveberichten SET gelezen = '1' WHERE id = '$id'");
while($object = mysql_fetch_object($query)){

$hopla = mysql_query("SELECT * FROM members WHERE memberid = '$object->van'");
while($kee = mysql_fetch_object($hopla)){
$a = $kee->naam;
}

$aap = mysql_query("SELECT * FROM members WHERE memberid = '$object->naar'");
while($noot = mysql_fetch_object($aap)){
$b = $noot->naam;
}
?>

<b>Van:</b> <a href="profiel.php?mid=<? echo $object->van ?>"><? echo $a ?></a><br />
<b>Naar:</b> <? echo $b ?><br />
<b>Verzonden:</b> <? echo $object->datum ?><hr style="width: 50%" align="left" />
<?
$bericht = $object->bericht;
$bericht = htmlspecialchars($bericht);
$bericht = nl2br($bericht);

$bericht = str_replace("\n","<br>",$bericht);
$bericht = str_replace(" ","&nbsp;",$bericht);
$bericht = str_replace(":]","<img src=\"img/smiles/laugh.gif\">",$bericht);
$bericht = str_replace(":-]","<img src=\"img/smiles/laugh.gif\">",$bericht);
$bericht = str_replace(":)","<img src=\"img/smiles/smile.gif\">",$bericht);
$bericht = str_replace(":-)","<img src=\"img/smiles/smile.gif\">",$bericht);
$bericht = str_replace(":D","<img src=\"img/smiles/biggrin.gif\">",$bericht);
$bericht = str_replace(":-D","<img src=\"img/smiles/biggrin.gif\">",$bericht);
$bericht = str_replace(":P","<img src=\"img/smiles/tongue.gif\">",$bericht);
$bericht = str_replace(":-P","<img src=\"img/smiles/tongue.gif\">",$bericht);
$bericht = str_replace(":p","<img src=\"img/smiles/tongue.gif\">",$bericht);
$bericht = str_replace(":-p","<img src=\"img/smiles/tongue.gif\">",$bericht);
$bericht = str_replace(";)","<img src=\"img/smiles/wink.gif\">",$bericht);
$bericht = str_replace(";-)","<img src=\"img/smiles/wink.gif\">",$bericht);
$bericht = str_replace(":O","<img src=\"img/smiles/ohmy.gif\">",$bericht);
$bericht = str_replace(":-O","<img src=\"img/smiles/ohmy.gif\">",$bericht);
$bericht = str_replace(":o","<img src=\"img/smiles/ohmy.gif\">",$bericht);
$bericht = str_replace(":-o","<img src=\"img/smiles/ohmy.gif\">",$bericht);
$bericht = str_replace(":(","<img src=\"img/smiles/sad.gif\">",$bericht);
$bericht = str_replace(":-(","<img src=\"img/smiles/sad.gif\">",$bericht);
$bericht = str_replace("8)","<img src=\"img/smiles/cool.gif\">",$bericht);
$bericht = str_replace("8-)","<img src=\"img/smiles/cool.gif\">",$bericht);
$bericht = str_replace(":\\","<img src=\"img/smiles/dry.gif\">",$bericht);
$bericht = str_replace(":-\\","<img src=\"img/smiles/dry.gif\">",$bericht);
$bericht = str_replace("%)","<img src=\"img/smiles/rolleyes.gif\">",$bericht);
$bericht = str_replace("%-)","<img src=\"img/smiles/rolleyes.gif\">",$bericht);
$bericht = str_replace(":@","<img src=\"img/smiles/dry.gif\">",$bericht);
$bericht = str_replace(":-@","<img src=\"img/smiles/dry.gif\">",$bericht);
$bericht = str_replace(":|","<img src=\"img/smiles/unsure.gif\">",$bericht);
$bericht = str_replace(":-|","<img src=\"img/smiles/unsure.gif\">",$bericht);
$bericht = str_replace(":?","<img src=\"img/smiles/huh.gif\">",$bericht);
$bericht = str_replace(":-?","<img src=\"img/smiles/huh.gif\">",$bericht);
$bericht = str_replace("|8|","<img src=\"img/smiles/ph34r.gif\">",$bericht);
$bericht = str_replace("|8-|","<img src=\"img/smiles/ph34r.gif\">",$bericht);
$bericht = str_replace("8/","<img src=\"img/smiles/blink.gif\">",$bericht);
$bericht = str_replace("8-/","<img src=\"img/smiles/blink.gif\">",$bericht);
$bericht = preg_replace("#\[b\](.*?)\[/b\]#si","<b>\\1</b>", $bericht);
$bericht = preg_replace("#\[i\](.*?)\[/i\]#si","<i>\\1</i>", $bericht);
$bericht = preg_replace("#\[u\](.*?)\[/u\]#si","<u>\\1</u>", $bericht);
$bericht = preg_replace("#\[center\](.*?)\[/center\]#si","<b>\\1</b>", $bericht);
$bericht = preg_replace("#\[hr\]#si","<hr style=\"width: 50%\" align=\"left\">", $bericht);

$bericht = preg_replace("#\[code\](.*?)\[/code\]#si","<font style=\"font-family: Courier New\">\\1</font>", $bericht);
$bericht = eregi_replace("([a-zA-Z0-9_-]+)@([a-zA-Z0-9\._-]+)(\.[a-zA-Z]+)", "<a href=\"mailto:\\1@\\2\\3\">\\1@\\2\\3</a>", $bericht);
$bericht = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]","<a href=\"\\0\" target=\"_blank\">\\0</a>",$bericht);
$bericht = preg_replace("#\[img=&quot;(.*?)&quot;\]#si","<img src=\"http://\\1\">", $bericht);
$bericht = preg_replace("#\[color=&quot;(.*?)&quot;](.*?)\[/color\]#si","<font color=\"\\1\">\\2</font>", $bericht);

echo $bericht;
?><hr style="width: 50%" align="left" />
&gt; <a href="?new=1">Nieuw bericht</a><br />
&gt; <a href="?new=1&amp;reply=<? echo $object->id ?>">Reageer</a><br />
&gt; <a href="javascript:verwijder('Weet je zeker dat je dit bericht wilt verwijderen?','?delete=<? echo $object->id ?>')">Verwijder</a><br />

<?
}
}
}
if($deleteall){
$query = mysql_query("SELECT * FROM priveberichten WHERE naar = '$memberid'");
$result = mysql_num_rows($query);

if(!$result){
echo "<br><br><br>Je kunt geen berichten verwijderen, want je inbox is al leeg.<br>\n<br>\n<a href=\"priveberichten.php\">Terug naar je inbox</a>";
}
if($result){
$query = mysql_query("DELETE FROM priveberichten WHERE naar = '$memberid'");
$query = mysql_query("REPAIR TABLE priveberichten");

echo "Al je prive-berichten zijn nu verwijderd.<br>\n<br>\n<a href=\"priveberichten.php\">Terug</a>";
}
}
if($block){
$query = mysql_query("SELECT * FROM members WHERE memberid = '$memberid'");

while($object = mysql_fetch_object($query)){
$geblokkeerd = $object->blockpm;
}
?>
Hier kun je instellen van welk lid je geen berichten meer wilt ontvangen.<br>
Let op! Vul het ID van het lid in en niet de naam. ( <a href="profiel.php">Zoek member ID</a> )<br />
<form method="post" action="?saveblock=1">
<center><textarea name="blockdeze" rows="3"><? echo htmlspecialchars($geblokkeerd); ?></textarea>
<td><input name="submit" type="submit" class="button" value="Opslaan" />
<br />
</center>
</form>
<?
}
if($saveblock){
$query = mysql_query("UPDATE members SET blockpm = '$blockdeze' WHERE memberid = '$memberid'") or die (mysql_error());
echo "Gegevens zijn succesvol opgeslagen.";
}
if($delete){
$query = mysql_query("SELECT * FROM priveberichten WHERE id = '$delete'");
$result = mysql_num_rows($query);

if(!$result){
echo "Dit bericht bestaat niet.<br><br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
}
else{
mysql_query("DELETE FROM priveberichten WHERE id = '$delete' AND naar = '$memberid'") or die(mysql_error());

echo "Bericht succesvol verwijderd.<br><br><a href=\"priveberichten.php\">Naar je inbox</a>";
}
}
}
else{
echo "Om deze pagina te bekijken, moet je ingelogd zijn.<br><br><a href=\"login.php\">Login</a>";
}
?>

brossiekoppie
%Europe/Berlin %815 %2006, 20:34
Dit antwoord geldt voor beide topics die nu voor je lopen:

1. je scripts zijn eerder een verzameling van fouten en onlogische constructies
2. qua beveiliging is dit gewoon een ramp, er is er gewoon geen!
3. je toont ook niet aan of je wel begrijpt wat er gebeurd

Dus, ik kan je enkel aanraden van php echt te leren (= o.a. scripts bestuderen, dit wil dus niet zeggen copy/paste; een goed boek lenen/kopen; een cursus volgen, ...)

Het kan echt niet de bedoeling zijn dat we voor jou gaan troubleshooten want zo heeft niemand er iets aan: jij begrijpt helemaal niet waar het om gaat en het kost ons tijd.
Maar, dit wil uiteraard niet zeggen datr we je niet willen helpen, wel integendeel! Maar ga eerst wat meer zelf op zoek en kom dan met zo specifiek mogelijke problemen en vragen naar het forum.

Veel succes.

PS: ivm de twee topics die nu nog lopen: je kan bvb de code gaan opdelen in samenhangende stukjes en deze dan een voor een gaan testen, als er wat fout loopt, probeer dan de foutmelding te begrijpen, als je ze niet begrijpt dan post je het stukje code en je zegt bvb ik krijg die foutmelding hierbij en het lukt me niet om het te verhelpen.

Als voorbeeld:

<?php
session_start();
include_once('rang_config.php');
require('config.php');
require('ip/block.php');

if( !$login ) { //waar komt deze vandaan?
?>
<link rel="stylesheet" content="text/css" href="style.css">
<p>Niet ingelogd<br>
<br><br>
&raquo; <a href="login.php">Log in</a><br>
&raquo; <a href="aanmelden.php">Meld aan</a>
<?php
} // EINDE niet ingelogd
?>

bkersten
%Europe/Berlin %825 %2006, 20:49
Oke, bedankt!

bkersten
%Europe/Berlin %788 %2006, 19:55
Oke, nu probeer ik een wachtwoord vergeten functie in het script in te bouwen.
Ik heb het script een beetje aangepast, maar nu snap ik echt niet waarom het niet werkt.
Ik voer het e-mailadres en de gebruikersnaam van de gebruiker in, en dan krijg ik de melding: 'gebruikersnaam hoort niet bij e-mail'.
Ik heb het hele script nog eens nagekeken, maar ik snap echt niet wat er nu niet klopt.
Ik snap wat er gebeurt in het script, maar ik snap niet waarom het nu dan niet werkt.
Volgens mij is alles goed.

[wwvergeten.php]

<?
include("config.php");
?>
<html>

<head>
<title>Wachtwoord vergeten</title>
<link rel="stylesheet" type="text/css" href="style_ww.css">
</head>

<body>
<?
function generator()
{
$karakters = array_merge(range('a','z'),range('A','Z'),range(0, 9));
shuffle($karakters);
$karakters = implode('',$karakters);
return substr($karakters,0,12);
}

if($_POST['generate'])
{
if($_POST['gebruikersnaam'] !== "" || $_POST['email'] !== "")
{
$query = mysql_query("SELECT `memberid` FROM `members` WHERE `email` = '".addslashes($_POST['email'])."' AND `gebruikersnaam` = '".addslashes($_POST['gebruikersnaam'])."'");

if(mysql_num_rows($query) == 1)
{
$wachtwoord = generator();
mail($_POST['email'],"Nieuw wachtwoord",$wachtwoord,"From: Bram Kersten <bram.kersten@home.nl>");

$sql = "UPDATE `members` SET `wachtwoord` = '".md5($wachtwoord)."' WHERE `email` = '".addslashes($_POST['email'])."'";
mysql_query($sql);

echo "Check je Emailbox voor het nieuwe wachtwoord, je kan inloggen met dit wachtwoord en daarna kan je het wachtwoord wijzigen als je ingelogd bent<br><br>Klik <a href=\"login.php\">hier</a> om naar de Loginpagina te gaan";
}

else
{
echo "Gebruikersnaam hoort niet bij Email<br><br><a href=\"javascript:history.back(-1)\">Terug</a>";
}
}

else
{
echo "Niet alles ingevuld<br><br><a href=\"javascript:history.back(-1)\">Terug</a>";
}
}

else
{
?>
<table border="0" cellpadding="1" cellspacing="0">
<form action="
<? $_SERVER['PHP_SELF'] ?>
" method="post">
<tr>
<td>Email:</td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td>Username:</td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td align="right"><input type="submit" name="generate" value="Maak nieuw wachtwoord!" style="width:170px;"></td>
</tr>
</form>
</table>
<?
}
?>
</body>

</html>


[config.php]

<?

$host = "localhost";
$user = "username";
$pass = "password";
$db = "database_naam";

mysql_connect($host,$user,$pass) or die(mysql_error());
mysql_select_db($db);

?>

Lorrens
%Europe/Berlin %803 %2006, 20:16
Dit antwoord geldt voor beide topics die nu voor je lopen:

1. je scripts zijn eerder een verzameling van fouten en onlogische constructies
2. qua beveiliging is dit gewoon een ramp, er is er gewoon geen!
3. je toont ook niet aan of je wel begrijpt wat er gebeurd

Dus, ik kan je enkel aanraden van php echt te leren (= o.a. scripts bestuderen, dit wil dus niet zeggen copy/paste; een goed boek lenen/kopen; een cursus volgen, ...)

Het kan echt niet de bedoeling zijn dat we voor jou gaan troubleshooten want zo heeft niemand er iets aan: jij begrijpt helemaal niet waar het om gaat en het kost ons tijd.
Maar, dit wil uiteraard niet zeggen datr we je niet willen helpen, wel integendeel! Maar ga eerst wat meer zelf op zoek en kom dan met zo specifiek mogelijke problemen en vragen naar het forum.

Veel succes.

PS: ivm de twee topics die nu nog lopen: je kan bvb de code gaan opdelen in samenhangende stukjes en deze dan een voor een gaan testen, als er wat fout loopt, probeer dan de foutmelding te begrijpen, als je ze niet begrijpt dan post je het stukje code en je zegt bvb ik krijg die foutmelding hierbij en het lukt me niet om het te verhelpen.


Heb je dit überhaupt gelezen?

w00
%Europe/Berlin %807 %2006, 20:23
Je moet in dit soort gevallen gewoon wat meer 'trial and error' proberen. Kijken waar het fout gaat, als je waarde doorgeeft komen die wel goed aan, etc...

Dat het rommelig is maakt niet echt veel uit, je begint net, wat wel uit maakt is dat je het volgensmij nog niet helemaal snapt. Maarja, het is natuurlijk aan jou of je een boek/tutorial lezen.

bkersten
%Europe/Berlin %818 %2006, 20:39
Oke.