email uit database versturen via emailform

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Seb wd

seb wd

04/06/2006 17:52:00
Quote Anchor link
Hello all,

Fkes een vraagje. Ik heb allemaal verschillende profielen in mijn database staan. Bezoekers kunnen nu op een naam klikken en dan krijgen ze het profiel van de geselecteerde persoon te zien (
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
view.php?id=$id
. In een profiel bevindt zich ook een emailadres. Nu kunnen mensen een e-mail sturen dmv
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<a href=mailto:$email>Mail mij</a>
een e-mail sturen. Maar ik zou graag willen dat ze dit dmv een emailform doen. Een emailform is zo te maken, maar hoe zorg ik er voor dat het berichtje naar de geselecteerde persoon ($email) gestuurd wordt. Hopelijk weet iemand het antwoord.
Merci!

Seb.
 
PHP hulp

PHP hulp

17/11/2024 02:33:19
 
Koen B

Koen B

04/06/2006 18:36:00
Quote Anchor link
je moet NOOIT <a href=mailto: gebruiken

Je moet net als view.php een mail.php maken met het forum.
En dan bij bij het forum uitvoeren doe je zoiets:

mail('$email', '$subject', $message);
echo "E-mail gestuurd naar: $naam";

in het form van mail.php moet je dus velden hebben waar de sublet en message ingevult kunnen worden
 
Seb wd

seb wd

04/06/2006 18:53:00
Quote Anchor link
Hoe zorg ik er dan voor dat de juiste$email wordt gepakt, want dit gebeurt in een nieuw .php file die ik aanmaak met het emailformulier.
 
Koen B

Koen B

04/06/2006 19:07:00
Quote Anchor link
Iedereen heeft toch een eigen profiel met:
view.php?id=$id
Datzelfde kun je ook doen met mail:
mail.php?id=$id
 
Something Else

Something Else

04/06/2006 21:05:00
Quote Anchor link
wat koen zegt, je kan het met een simpele $_GET[''] varaible de $id dan krijgen :)
 
Seb wd

seb wd

05/06/2006 11:23:00
Quote Anchor link
Jermaine wat bedoel je precies. Ik heb namelijk nu dit in post.php?id
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
if ($submit) {
   $result = mysql_query("SELECT * FROM $table WHERE id=$id",$db);
$links = mysql_fetch_array($result);
   $id = $links["id"];
   $email = $links["email"];

Alleen hij zegt wel dat het bericht succesvol is verzonden, maar tevens vermeldt hij dat er geen emailadres in de header is gevonden. Kortom, het bovengenoemde is niet goed, hij haalt het emailadres van het id niet op.
Voor de duidelijkheid in view.php?id heb ik
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
if ($id) {
   $result = mysql_query("SELECT *, DATE_FORMAT(datum, '%d/%m/%Y') AS datum_opgemaakt FROM $table WHERE id=$id",$db);
$links = mysql_fetch_array($result);
   $id = $links["id"]; etc..
Dit werkt wel in view.php.

Seb.
 
Willem Jan Z

Willem Jan Z

05/06/2006 11:31:00
Quote Anchor link
Bestaat $tabel?
Controleer sowieso je query!
mysql("query..") or trigger_error(mysql_error());
trigger_error() vervangen door die() als je niet wilt dat je pagina verder geladen wordt als de query mislukt is.
 
Seb wd

seb wd

05/06/2006 11:34:00
Quote Anchor link
$table klopt, want ik heb in post.php include ("include/dbconnect.php"); staan en daar staat alles.
Als men in view.php zit en men wil een email sturen dan klikt men op emailform.php?id
in emailform staat het volgende
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Emailfomulier</title>
</head>

<body>
<form name="form1" method="post" action="post.php">
      Naam: <br /><input name="naam" type="text" value=""><br>
      E-mail: <br /><input name="email_stuurder" type="text" value=""><br><br>
      Bericht: <br /><textarea name="bericht" rows="7" cols="45"></textarea><br>
      <input type="submit" name="Submit" value="Verzenden">
</form>
</body>
</html>
Zit hier misschien de fout? vanwege post.php, moet daar misschien een ?id achter?
Merci!

Seb.
Gewijzigd op 01/01/1970 01:00:00 door seb wd
 
Willem Jan Z

Willem Jan Z

05/06/2006 11:48:00
Quote Anchor link
Sorry, ik ging er van uit je $id al ergens gedeclareerd had.

Ik zou als ik jou was een hidden veld maken, daar het id van de user inzetten, en die uitlezen in post.php met $_POST['naam_van_hidden_field']
 
Seb wd

seb wd

05/06/2006 14:44:00
Quote Anchor link
merci, maar id van de user verschilt natuurlijk, dus ik kan er geen getal neerzetten, maar een id=$id?
Ik ben er niet erg thuis in, zou je met de bovengenoemde code van emailform.php je hidden suggestie willen toevoegen?

Seb.
 
Jan Koehoorn

Jan Koehoorn

05/06/2006 14:49:00
Quote Anchor link
Er van uit gaande dat $id al bestaat en een waarde heeft:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Emailfomulier</title>
</head>

<body>
<form name="form1" method="post" action="post.php">
      Naam: <br /><input name="naam" type="text" value=""><br>
      E-mail: <br /><input name="email_stuurder" type="text" value=""><br><br>
      Bericht: <br /><textarea name="bericht" rows="7" cols="45"></textarea><br>
      <input name="id" type="hidden" value="<?php echo $id; ?>">
      <input type="submit" name="Submit" value="Verzenden">
</form>
</body>
</html>
Gewijzigd op 01/01/1970 01:00:00 door Jan Koehoorn
 
Mark L

Mark L

05/06/2006 14:52:00
Quote Anchor link
met mail() kan het toch zijn dat hij bijvoorbeeld bij hotmail bij ongewense email komt?
 
Jan Koehoorn

Jan Koehoorn

05/06/2006 14:56:00
Quote Anchor link
@Markeij: zou kunnen, maar ik blijf het zeggen: gebruik de phpmailer class. Goed uitzoeken hoe het werkt in de documentatie en dan kun je er alles mee.
 
Robert Deiman

Robert Deiman

05/06/2006 15:19:00
Quote Anchor link
Zet boven die stukjes code van jou eens $id = $_GET['id']. Dan is $id in ieder geval gevuld..
 
Seb wd

seb wd

05/06/2006 15:39:00
Quote Anchor link
welke stukjes code bedoel, ik heb hierboven namelijk meerdere codes staan.
 
Seb wd

seb wd

05/06/2006 17:24:00
Quote Anchor link
@Jan: krijg nog steeds hetzelfde bericht: no reciptient addresses found in header....
 
Seb wd

seb wd

08/06/2006 12:26:00
Quote Anchor link
even een berichtje dat jullie suggesties allemaal juist waren. Ik had een klein typefoutje gemaakt, dus vandaar dat het niet werkte. Nu dus wel!
Merci!

Seb.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.