Dominique schreef op 06.02.2009 14:25
Hallo
ik zit met een probleem waar ik helemaal niet uit komt.
Ik heb een prive berichten syteem op me website staan, Deze heb op me oude server altijd gewerk. maar op de nieuw server werkt hij niet meer.
Ik kan geen berichten meer openen, verzenden en verwijderen.
Wie kan mij helpen om deze weer goed te laten werken
Naja kan allemaal redenen hebben:
php 4 to php 5?
niet verbonden met mysql?
session start zie ik nergens (volgens mij zit dat bij header)
etc. etc.
probeer een paar dingen uit zou ik zeggen.
werken andere systemen enz. wel?
Link gekopieerd
?
Onbekende gebruiker
06-02-2009 14:58
Dominique schreef op 06.02.2009 14:54
ahha okee. Maar ik hoop dat jullie het script kunnen zien, en de fout kunnen ontdekken want ik ben hier al 2 weken mee bezig maar ik kom er echt niet uit.
Dan moet je het eerst posten hé...
Doe dat tussen [ignore]<?php en ?>[/ignore] tags.
Laat maar, je bent er zoneentje die het op plaatstcode dumpt.
Link gekopieerd
je gebruikt shorttags, die zijn depricated en werken niet overal.
dus i.p.v. [ignore]<?[/ignore] gebruik je voortaan [ignore]<?php[/ignore]
En verder is er natuurlijk de vraag of je ook foutmeldingen krijgt?
Dit is trouwens onlogisch:
<?php
include ('../template/subdir_header.php');
?>
<?php
error_reporting(E_ALL | E_STRICT);
?>
Als er in die include wat fout gaat zie je dat nu niet.
Link gekopieerd
<?php
include ('../template/subdir_header.php');
?>
<?php
error_reporting(E_ALL | E_STRICT);
?>
<?
if(isset($_SESSION['gebruiker'])){
// 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">
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){
$berichten_query = mysql_query("SELECT * FROM priveberichten WHERE naar = '".$_SESSION['gid']."' ORDER BY id DESC");
$result = mysql_num_rows($berichten_query);
?>
<table width="100%" border="0" cellpadding="2" bordercolor="#CCCCCC" cellspacing="0">
<tr>
<td height="16"><h1>Inbox</h1></td>
</tr>
</table>
<p><img SRC="images/breaker.png" width="396" height="2"><br>
<br>
<br>
<?
if(!$result){
echo "<b>Geen privé- berichten in je inbox...</b><br><br>";
} else{
?>
<b><? echo $result ?> privé- berichten in je inbox...</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($berichten_query)){
?>
<tr>
<td width="5%"><? if($object->gelezen){ echo "Ja"; } else{ echo "Nee"; } ?></td>
<td width="10%">
<?
$fuck = mysql_query("SELECT * FROM leden WHERE id = '".$object->van."'");
while($van = mysql_fetch_object($fuck)){
$auteur = $van->gebruikersnaam;
}
echo $auteur;
?>
</td>
<td width="10%"><a href="leden/priveberichten.php?id=<? echo $object->id ?>"><? echo $object->onderwerp ?></a></td>
<td width="10%"><? echo $object->datum ?></td>
</tr>
<?
}
echo "</table><hr>";
}
?>
<img src="../image/new.gif"> <a href="leden/priveberichten.php?new=1">Nieuw bericht</a><br>
<img src="../image/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>
<?
}
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";
$fuck = mysql_query("SELECT * FROM leden WHERE id = '".$object->van."'");
while($van = mysql_fetch_object($fuck)){
$naar = $van->gebruikersnaam;
}
}
}
?>
<table width="100%" border="0" cellpadding="2" bordercolor="#CCCCCC" cellspacing="0">
<tr>
<td height="16">
<h1>Nieuw bericht</h1>
</td>
</tr>
</table>
<p><img SRC="images/breaker.png" width="396" height="2"><br>
<br>
<br>
Stel hier een nieuw bericht op dat je vervolgens naar een member wilt gaan zenden...<br><br>
<form method="POST" action="leden/priveberichten.php?send=1" name=formulier>
Member ID: <input type="text" name="naar" size="15" value="<? echo $naar ?>"> ( <a href="leden/ledenlijst.php">Zoek member ID</a> )<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('[b][/b] ')">
<input type="button" style="font-style: italic; width: 30px" value="I " onclick="javascript:icon('[i][/i] ')">
<input type="button" style="text-decoraton: underline; width: 30px" value="U" onclick="javascript:icon('[u][/u] ')">
<input type="button" style="color: #0000FF" value="Color" onclick="javascript:icon('[color="#FF9900"][/color] ')"><br>
<textarea rows="7" name="bericht" cols="40"></textarea>
<br>
<input type="submit" value="Verstuur"> <input type="reset" value="Wis velden"></p>
</form>
<?
}
if($send){
if(!$naar || !$onderwerp || !$bericht){
echo "Alle velden dienen ingevuld te zijn...<br><br><a href=\"javascript:history.go(-1)\">Ga terug</a>";
}
else{
$query = mysql_query("SELECT * FROM leden WHERE gebruikersnaam = '$naar'");
$result = mysql_num_rows($query);
while($object = mysql_fetch_object($query)){
$ikblock = $object->blockpm;
$geen_berichten = $object->geen_berichten;
$geblokkeerd = $object->blockpm;
}
if(strstr($ikblock,$naar)){
echo "De member waar je dit bericht naartoe wilt sturen heb je zelf geblokkeerd ...";
}
else{
if(strstr($geblokkeerd,$_SESSION['gebruiker'])){
echo "Deze member heeft je geblokkeerd qua sturen van privé- berichten...";
}
else{
if($geen_berichten){
echo "Deze member heeft niet ingesteld dat hij/zij privé- berichten wil ontvangen, daarom is je bericht niet verzonden";
}
else{
if(!$result){
echo "De ID die je hebt ingevuld waar dit privé- bericht naar toe moet bestaat niet, probeer het nog eens...";
}
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. Onze excuses voor dit ongemak.";
}
else{
$query = mysql_query("SELECT * FROM leden WHERE gebruikersnaam = '$naar'");
while($object = mysql_fetch_object($query)){
$naar = $object->id;
$naarnaam = $object->gebruikersnaam;
$geen_berichten = $object->geen_berichten;
}
$query = mysql_query("SELECT * FROM leden WHERE gebruikersnaam = '".$_SESSION['gebruiker']."'");
while($object = mysql_fetch_object($query)){
$van = $object->id;
}
$datum = date("d-m-Y \o\m\ H:i:s");
if(!$geen_berichten){
$onderwerp = mysql_real_escape_string($onderwerp);
$van = mysql_real_escape_string($van);
$naar = mysql_real_escape_string($naar);
$datum = mysql_real_escape_string($datum);
$bericht = mysql_real_escape_string($bericht);
$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><br><a href=\"leden/priveberichten.php\">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 = '".$_SESSION['gid']."' 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 leden WHERE id = '$object->van'");
while($kee = mysql_fetch_object($hopla)){
$a = $kee->gebruikersnaam;
}
$aap = mysql_query("SELECT * FROM leden WHERE id = '$object->naar'");
while($noot = mysql_fetch_object($aap)){
$b = $noot->gebruikersnaam;
}
?>
<table width="100%" border="0" cellpadding="2" bordercolor="#CCCCCC" cellspacing="0">
<tr>
<td height="16">
<h1>Inbox</h1>
</td>
</tr>
</table>
<p><img SRC="images/breaker.png" width="396" height="2"><br>
<br>
<br>
<b>Van:</b> <a href="leden/profiel.php?id=<? echo $a ?>"><? 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(" "," ",$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="(.*?)"\]#si","<img src=\"http://\\1\">", $bericht);
$bericht = preg_replace("#\[color="(.*?)"](.*?)\[/color\]#si","<font color=\"\\1\">\\2</font>", $bericht);
echo $bericht;
?><hr style="width: 50%" align="left">
> <a href="leden/priveberichten.php?new=1">Nieuw bericht</a><br>
> <a href="leden/priveberichten.php?new=1&reply=<? echo $object->id ?>">Reageer</a><br>
> <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 = '".$_SESSION['gid']."'");
$result = mysql_num_rows($query);
if(!$result){
echo "Er zijn geen berichten gevonden om te verwijderen dus is je hele inbox al leeg...<br>\n<br>\n<a href=\"leden/priveberichten.php\">Terug naar je inbox</a>";
}
if($result){
$query = mysql_query("DELETE FROM priveberichten WHERE naar = '".$_SESSION['gid']."'");
$query = mysql_query("REPAIR TABLE priveberichten");
echo "Al je privé- berichten zijn nu verwijderd... <br><br><a href=\"leden/priveberichten.php\">Naar je inbox</a>";
}
}
if($block){
$query = mysql_query("SELECT * FROM leden WHERE gebruikersnaam = '".$_SESSION['gid']."'");
while($object = mysql_fetch_object($query)){
$geblokkeerd = $object->blockpm;
}
?>
<table width="100%" border="0" cellpadding="2" bordercolor="#CCCCCC" cellspacing="0">
<tr>
<td height="16">
<h1>Blokkeren</h1>
</td>
</tr>
</table>
<p><img SRC="images/breaker.png" width="396" height="2"><br>
<br>
<br>
Hier kun je instellen van welke members je geen privé- berichten wilt ontvangen, zet elke ID van een member op een nieuwe regel ( <a href="leden/profiel.php">Zoek memberID</a> )<br>
<form method="POST" action="leden/priveberichten.php?saveblock=1">
<center><textarea name="blockdeze" rows="8"><? echo htmlspecialchars($geblokkeerd); ?></textarea><br>
<input class="button" type="submit" value="Opslaan"></center>
</form>
<?
}
if($saveblock){
$query = mysql_query("UPDATE leden SET blockpm = '$blockdeze' WHERE gebruikersnaam = '".$_SESSION['gebruiker']."'") 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...";
}
else{
mysql_query("DELETE FROM priveberichten WHERE id = '$delete' AND naar = '".$_SESSION['gid']."'") or die(mysql_error());
echo "Bericht succesvol verwijderd...<br><br><a href=\"leden/priveberichten.php\">Naar je inbox</a>";
}
}
} else{
echo "Om privé-berichten te kunnen versturen moet je ingelogd zijn...<br><br><a href=\"leden/login.php\">Login</a>";
}
?>
<?php
include ('../template/footer.php');
?>
Link gekopieerd
relevante code != script van 350 regels
Link gekopieerd
dit ziet er gaar uit:
<?php
echo "<link rel=\"stylesheet\" content=\"text/css\" href=\"style.css\">";
?>
wat is dit eigenlijk
<?
if(!$new && !$send && !$id && !$deleteall && !$delete && !$block && !$saveblock && !$reply){
$berichten_query = mysql_query ("SELECT * FROM priveberichten WHERE naar = '".$_SESSION['gid']."' ORDER BY id DESC");
$result = mysql_num_rows($berichten_query);
}
?>
wat houd new enz. in? dat word volgens mij nergens gevalideerd. wat staat er in je header file?
etc. etc.
Link gekopieerd
?
Onbekende gebruiker
06-02-2009 15:15
Peter schreef op 06.02.2009 15:14
dit ziet er gaar uit:
<?php
echo "<link rel=\"stylesheet\" content=\"text/css\" href=\"style.css\">";
?>
Jij doet niet aan escape'en?
Link gekopieerd
Nee
deze code
<?
if(!$new && !$send && !$id && !$deleteall && !$delete && !$block && !$saveblock && !$reply){
$berichten_query = mysql_query ("SELECT * FROM priveberichten WHERE naar = '".$_SESSION['gid']."' ORDER BY id DESC");
$result = mysql_num_rows($berichten_query);
}
?>
maak haal gegeven uit me database van de mail
Link gekopieerd
Dominique schreef op 06.02.2009 15:22
Nee
deze code
<?
if(!$new && !$send && !$id && !$deleteall && !$delete && !$block && !$saveblock && !$reply){
$berichten_query = mysql_query ("SELECT * FROM priveberichten WHERE naar = '".$_SESSION['gid']."' ORDER BY id DESC");
$result = mysql_num_rows($berichten_query);
}
?>
maak haal gegeven uit me database van de mail
"Nee deze code maak haal gegeven uit me database van de mail"... ??
wat probeer je te zeggen??
Link gekopieerd