Ik heb een script nodig dat mensen in staat stelt zich af te melden van een maillist.

De maillist is opgeslagen in een mysql database.
Daarbij worden tabellen "naam" en "mail" gebruikt.

In het script moet dus de naam en mail ingevuld worden, pas als dit overeenkomt mag deze uit de database verwijderd worden.

Ik ben al een aantal weken aan het zoeken en proberen geweest, maar kan niets vinden.

Hoop dat iemand zo'n script heeft of mij kan helpen...

@ Lapidi

in word ja :|
ik heb hier niks anders en mag geen software op dit systeem installeren.
zit op m'n werk namelijk
klabblok?
was ook nog een mogelijkheid geweest ja :P
Ok,

had een aantal accolades te weinig in het script....

Script geeft nu geen foutmeldingen meer, alleen bij het invullen van de naam en mail en dan op de bevestigingsknop drukken gebeurt er niets.

Pagina herlaad, en geeft geen melding van wel of niet gelukt...

Wat kan dat zijn...?

Ziehier het script....

<?
$hostname = "localhost";
$username = "derodehaan_nl";
$password = "********";
$database = "derodehaan_nl_5";

mysql_connect("$hostname","$username","$password");
mysql_select_db("$database");


if (!$action) {
echo "<br><br>Om jezelf te verwijderen van de mailing list vul dan hieronder je naam en e-mail in.<BR><BR>\n";
if ($afmelden) {
if ($naam != "" && $email != "") {
$query = mysql_query("SELECT * FROM mailing WHERE email = '$email'");
if(mysql_num_rows($query) >= 1) {
echo "<FONT COLOR=\"#FF0000\">De <B>E-mail</B> die U opgaf is al geregistreerd!</FONT>\n";
} else {
if (preg_match("/(?i)^([a-z0-9._-])+@([a-z0-9.-])+\.([a-z0-9]){2,4}$/",$email)) {
$query2 = "DELETE FROM tabel WHERE username = '" . $_POST['naam'] . "' AND email = '" . $_POST['mail'] . "'";

mysql_query($query2) or die(mysql_error());
$name = "De Rode Haan";
$myemail = "[email protected]";
$subject = "Verwijdering van Mailinglist";
$message = "Beste $naam,
Je bent verwijderd van de mailinglist van: $name.

----------------------------------------
Je gegevens:

Naam: $naam
E-mail: $email
----------------------------------------

Mocht je dit niet zelf gedaan hebben, meld je dan weer aan op www.derodehaan.nl

Met Vriendelijke Groet, $name";
mail("$email","$subject","$message","From: $name <$myemail>");
echo "Okey, je bent verwijderd van de mailing list.<BR>Er is een e-mail verstuurd ter bevestiging!\n";
} else {
echo "<FONT COLOR=\"#FF0000\">De <B>E-mail</B> die je opgaf is geen goed email adres!</FONT>\n";
}
}}}
} else {
echo "<FONT COLOR=\"#FF0000\">Geen <B>Naam</B> en/of <B>E-mail</B> ingevult</FONT>\n";
}
echo "<FORM METHOD=\"post\" ACTION=\"index.php\">\n";
echo "<TABLE BORDER=\"0\" CELLPADDING=\"5\" CELLSPACING=\"0\" WIDTH=\"400\">\n";
echo "<TR>\n";
echo "<TD>Naam:</TD>\n";
echo "<TD><INPUT TYPE=\"text\" NAME=\"naam\" SIZE=\"20\" CLASS=\"form\"></TD>\n";
echo "</TR>\n";
echo "<TR>\n";
echo "<TD>E-mail:</TD>\n";
echo "<TD><INPUT TYPE=\"text\" NAME=\"email\" SIZE=\"20\" CLASS=\"form\"></TD>\n";
echo "</TR>\n";
echo "<TR>\n";
echo "<TD COLSPAN=\"2\"><INPUT TYPE=\"submit\" NAME=\"verwijderen\" VALUE=\"Verwijderen!\" CLASS=\"button\"></TD>\n";
echo "</TR>\n";
echo "</TABLE>\n";
echo "</FORM>\n";

?>&nbsp;</td>
</tr>
</table>
</div></td>
</tr>
<tr>
<td width="56">&nbsp; </td>
</tr>
</table>
<!-- End ImageReady Slices -->
</body>
</html>
<FORM METHOD=\"post\" ACTION=\"index.php\">\n";
doe daar eens:
<FORM METHOD=\"post\" ACTION=“< ?php echo $_SERVER[’PHP_SELF’]; ?>”
Dan krijg ik dit:

Parse error: parse error, unexpected '\"', expecting T_STRING or T_VARIABLE or T_NUM_STRING
<?php
echo "<FORM METHOD=\"post\" ACTION=\"".$_SERVER['PHP_SELF']."\">";
?>


@kalle , kladblok toe :)
Blijft hetzelfde...
Wordt niets weggehaald en krijg geen meldingen, alleen de velden worden gewist...
Dan betekent het iniedergeval dat het aan je script ligt dan.

Ja sorry wes was ff met andere dingen bezig. Losse pols werk.
meldingen is niet raar , je echood verder niets daar, je maakt aleen een mailtje op. daaronder komt je form weer leeg.

in je mail() , zet even je vars buiten de quotejes. lijn daaronder moet je even iets van echo "mailing is verzonden!"; zetten, dan weet je waar je script blijft

Reageren