Alles werkt naar behoren, behalve de mail beheer niet...

Als ik op toevoegen klik, en/of bewerk/verwijder, dan gebeurt er niets.

Iemand een idee?

Groetjes Huber


<?PHP
Ob_Start();
  Include("../_include.php");
   check_login();
    check_admin();
	 Design_Boven($naamsite . " - Admin mail");

$actie = @$HTTP_GET_VARS['actie'];

/**** TOEVOEGEN ***/
if($actie == "toevoegen") {
    
   echo "<h2>Mail - Toevoegen</h2>\n";
  	
  	if($_SERVER['REQUEST_METHOD'] === 'POST')
  	{

        @mysql_query("
        				INSERT INTO 
        					mail 
        				(
	        				actief,
	        				url,
	        				naam,
	        				kliks,
	        				tekst
        				) 
        				VALUES 
        				(
        					1,
        					'".mysql_real_escape_string($_POST['url'])."',
        					'".mysql_real_escape_string($_POST['naam'])."' ,
        					'".mysql_real_escape_string($_POST['kliks'])."',
        					'".$_POST['tekst']."'
        				)
        			");
	$id = mysql_insert_id();

         echo "De mail is toegevoegd.<br>\n<a href=\"mailbeheer.php\">Ga terug.</a>\n";

$lQuery = mysql_query("SELECT * FROM users WHERE inbox = 'inbox'");
        while($lFetch = mysql_fetch_assoc($lQuery)){
        	mysql_query("INSERT INTO mail_user (mail_id, user, gelezen) VALUES('".$id."', '".$lFetch['id']."', '0')");
}

    } 
    else 
    {
?>
<form method="post" action="mailbeheer.php?actie=toevoegen">
	<table>
		<tr>
			<td>
				Link:
			</td>
			<td>
				<input type="text" name="url" value="http://www.">
			</td>
		</tr>
		<tr>
			<td>
				Mailtitel:
			</td>
			<td>
				<input type="text" name="naam" value="Titel van uw bericht">
			</td>
		</tr>
		<tr>
			<td>
				Aantal lezers:
			</td>
			<td>
				<input type="text" name="kliks" value="1000">
			</td>
		</tr>
		<tr>
			<td>
				Advertentie tekst:
			</td>
			<td>
				<textarea name="tekst" ROWS="25" COLS="50">Vul hier uw gewenste tekst in. Er moeten HTML-codes gebruikt worden voor de opmaak.</textarea>
			</td>
		</tr>
	</table>
   	<input type="submit" name="submit" value="submit">
</form>
<?php
    }
} 
elseif($actie == "bewerk") 
{
   	echo "<h2>Mail - Bewerken</h2>\n";

    $query = mysql_query("SELECT * FROM mail WHERE id = ".mysql_real_escape_string($_GET['id'])."");
    
    if(mysql_num_rows($query) == 0) 
    {
    
        echo "Error: Betaalde mail bestaat niet!";
            
    } 
    else 
    {
        if($_SERVER['REQUEST_METHOD'] === 'POST')
        {
            mysql_query("
            				UPDATE 
            					mail 
            				SET 
            					id = '".mysql_real_escape_string($_GET['id'])."', 
            					naam = '".mysql_real_escape_string($_POST['naam'])."', 
            					url = '".mysql_real_escape_string($_POST['url'])."', 
            					kliks = '".mysql_real_escape_string($_POST['kliks'])."', 
            					geklikt = '".mysql_real_escape_string($_POST['geklikt'])."', 
            					tekst = '".$_POST['tekst']."'  
            				WHERE 
            					id = ".mysql_real_escape_string($_GET['id'])."
            			");
            			
            echo "Product is bewerkt.<br>\n<a href=\"mailbeheer.php\">Ga terug.</a>\n";
        
        } 
        else 
        {
        
			$show = mysql_fetch_assoc($query);		
?>
<form method="post" action="mailbeheer.php?actie=bewerk&id=<?php echo $_GET['id']; ?>">
	<table>
		<tr>
			<td>
				Titel vd Mail:
			</td>
			<td>
				<input type="text" name="naam" value="<?php echo htmlentities($show['naam']); ?>">
			</td>
		</tr>
		<tr>
			<td>
				Url:
			</td>
			<td>
				<input type="text" name="url" value="<?php echo htmlentities($show['url']); ?>">
			</td>
		</tr>
		<tr>
			<td>
				Kliks:
			</td>
			<td>
				<input type="text" name="kliks" value="<?php echo htmlentities($show['kliks']); ?>">
			</td>
		</tr>
		<tr>
			<td>
				Geklikt:
			</td>
			<td>
				<input type="text" name="geklikt" value="<?php echo htmlentities($show['geklikt']); ?>">
			</td>
		</tr>
		<tr>
			<td>
				Tekst:
			</td>
			<td>
				<textarea name="tekst" ROWS="25" COLS="50"><?php echo $show['tekst']; ?></textarea>
			</td>
		</tr>
	</table>						
	<input type="submit" name="submit" value="Verander">
</form>
<?php
		}
		
  	}

} 
elseif($actie == "verwijder") 
{
    
    echo "<h2>Mail - Verwijderen</h2>\n";
    
    mysql_query("DELETE FROM mail WHERE id = ".mysql_real_escape_string($_GET['id'])."");
	mysql_query("DELETE FROM mailgeklikt WHERE id1 = ".mysql_real_escape_string($_GET['id'])."");
    
    echo "Betaalde mail is verwijderd.<br>\n<a href=\"mailbeheer.php\">Ga terug.</a>\n";
} 
elseif($actie == "verzenden") 
{
    
    echo "<h2>Mail - Verzenden</h2>\n";

$id = addslashes(@$HTTP_GET_VARS['id']);

$mailinfo = mysql_query("SELECT * FROM mail WHERE id =".$id."");
$mail = mysql_fetch_array($mailinfo);

$mailid = $mail[id];
$tekst = $mail[tekst];
$url = $mail[url];
$naam = $mail[naam];

$subject = "$naam";
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1" . "\r\n";
$headers .= "From: $naamsite <$mailsite> " . "\r\n";
$headers .= "X-Mailer: PHP v".phpversion(). "\r\n";
$Bericht = "<head>
<meta http-equiv=\"Content-Language\" content=\"nl\">
</head>

<body style=\"width: 602px; border-width: 3px; border-color: #FF9900; border-style: solid;\">
<div align=\"center\">

<table width=\"498\" cellpadding=\"0\"  bgcolor=\"#f5fffa\">

<tr>
    <td style=\"padding-left: 0px; padding-right: 0px; border-style: solid; border-color: #000066; border-width: 0px 0px 1px 0px; \">
	<p align=\"center\">
	<img border=\"0\" src=\"$link/images/banner.gif\" width=\"468\" height=\"60\"><tr>
    <td style=\"padding-left: 6px; padding-right: 6px;\">
	<BR />
	
	<p align=\"center\"> $tekst

         

         <BR /> <BR />
				 <p align=\"center\">
    <a href=\"$link/mail.php?id=$id&userid=[id]\"><img src=\"$link/images/vergoedlink.png\"></a><br /><br />


    
	Voor deze mail ontvangt u een vergoeding van:&nbsp; &euro; &nbsp; $prijs <BR />
    </p>
	
			
	<tr>
    <td style=\"padding-left: 0px; padding-right: 0px; border-style: solid; border-color: #000066; border-width: 1px 0px 0px 0px; \">
	<p align=\"center\"><font style=\"font-size: 10px\">U ontvangt deze mail omdat u lid bent op $naamsite. <br />
	Wanneer u deze mail(s) niet (meer) wenst te ontvangen kunt u dit <a href=\"$link/leden/aanpassen.php\">hier</a> aangeven.
	</font><br />
	</div>";

	$emails = mysql_query("SELECT * FROM users WHERE inbox = 'email'");
	while($row = mysql_fetch_object($emails))
	{

			$iduser = $row->id;
		    $inhoud = $Bericht;
    		$bericht2 = str_replace("[id]","$iduser",$inhoud);
    		$to = $row->email;

			mail($to, $subject, $bericht2, $headers);

	}
	
	echo "
			De mail is verzonden.<BR><BR>
			<a href=\"mailbeheer.php\">Klik hier om terug te gaan naar de betaalde mail pagina</a>.
		";
}
else 
{
    
    echo "<h2>Mail</h2>\n";

?>
<a href="mailbeheer.php?actie=toevoegen">Toevoegen<a><br><br>

<table width='600' style="font-size: 10px;">
	<tr>
		<td class="tabel">
			Id
		</td>
		<td class="tabel">
			Titel
		</td>
		<td class="tabel">
			Bezoekers
		</td>						
   		<td class="tabel">
   			Bewerken
   		</td>
		<td class="tabel">
			Verwijderen
		</td>
		<td class="tabel">
			Verzenden
		</td>
	</tr>
<?php	
 	$query = mysql_query("SELECT id, naam, geklikt FROM mail ORDER BY id ASC");
 	
    while($row = mysql_fetch_array($query)) 
    {
?>
<tr>
    <td class="inhoud" width="25">
    	<?php echo $row['id']; ?>
    </td>
    <td class="inhoud" width="135">
    	<?php echo htmlentities($row['naam']); ?>
    </td>
    <td class="inhoud" width="40">
    	<?php echo htmlentities($row['geklikt']); ?>
    </td>
    <td class="inhoud" width="25">
    	<a style="font-size: 10px;" href="mailbeheer.php?actie=bewerk&id=<?php echo $row['id']; ?>">Bewerk</a>
    </td>
    <td class="inhoud" width="25">
    	<a style="font-size: 10px;" href="mailbeheer.php?actie=verwijder&id=<?php echo $row['id']; ?>">Verwijder</a>
    </td>
    <td class="inhoud" width="25">
    	<a style="font-size: 10px;" href="mailbeheer.php?actie=verzenden&id=<?php echo $row['id']; ?>">Verzenden</a>
    </td>
</tr>
<?php
    }
?></table><?php
}
Design_Onder('1');
Ob_End_Flush();
?>

Huber,

Ik denk dat je even je php versie moet updaten.

http://php.net/manual/en/reserved.variables.get.php

HTTP_GET_VARS(); is deprecated.

Is het een oud script waar je aan het rotzooien bent? Kijk anders of je het kan herschrijven.
Ik zou ook even de @'jes weghalen, want je wilt niet de foutmeldingen verbergen.
Wat Rickert en Aar zeggen, tevens:

* Als je code ontwikkelt is het handig als je het melden + weergeven van fouten aanzet.
* De standaard MySQL API (alle functies die starten met mysql_...) is al ~10 jaar verouderd, gebruik PDO of MySQLi.
* Stap af van deze if-elseif-elseif-else-hel. Deel je acties op zodat je ze in afzondering kunt behandelen. Dit kun je bijvoorbeeld doen door deze op te delen in aparte PHP-bestanden of een klasse te definiëren met verschillende (actie-)methoden.
* In beginsel (en wanneer je code logsch is opgezet) is het in principe niet nodig om output buffering te gebruiken. Waarom gebruik je dit?
Bedankt Rickert Bombaklats

Heb het vervangen voor $_get en alles werkt nu naar behoren.

Dit script heb ik met andere in 2010 gemaakt, het is een fijn script, en werkt verder perfect.


Groetjes Huber
Hoe ik de fouten altijd oplos, ik controleer eerst waar de fout zich zou kunnen voordoen waarna ik de regel verbeter. En als ik nieuwe dingen toe heb gevoegd haal ik dat helemaal weg en zet ik het er stap voor stap opnieuw in.

En even een tip, we zitten bijna op PHP 7... Dus script het eventjes om ;)
mysql-functies worden ook deprecated in PHP 7, kan geen kwaad om je script opnieuw te schrijven dus.
Verder snap ik weet niet waarom je HTTP_GET_VARS en de oude mysql-functies nog in 2010 gebruikte want $_GET en MySQLi-functies bestonden toen ookal.
PHP Maarten op 14/10/2015 08:58:56
mysqli-functies worden ook deprecated in PHP 7

Bron? Er zijn al een aantal mysqli-functies die deprecated zijn (al voor PHP 7) dus wat verandert er specifiek bij PHP 7?

De bovenstaande quote kan ook zo geïnterpreteerd worden dat alle mysqli-functies deprecated zouden worden. Dat lijkt mij niet het geval.
Hahah sorry, het is ochtend en ik had die i weg moeten laten..

--
Heb me vorige post aangepast.
... but more coffee!

Reageren