Ik heb in een database een tabel met: "id", "employee" en "email"
zo staat er een naam + bijhorende email in de tabel.
Ik heb een php scriptje die door die tabel heen loopt en alle namen in een list zet als options. Nu zit ik met het volgende: Als je een persoon selecteert uit die lijst en dan op submit drukt, moet er een mailtje verzonden worden naar de geselecteerde persoon (dus naar de e-mail die gekoppeld is aan diegene).
Weet iemand hoe dat moet en/of het überhaupt kan? Ik werk via XAMPP dus alles is lokaal.
oke ik heb nu dit voor het verzenden van een email (duurde lang maar dan heb je ook wat)
<?php
require 'phpmailer/PHPMailerAutoload.php';
define('Include',TRUE);
$mail = new PHPMailer;
//$mail->SMTPDebug = 3; // Enable verbose debug output
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = 'smtp-pulse.com'; // Specify main and backup SMTP servers
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = '[email protected]'; // SMTP username
$mail->Password = 'wachtwoordfake'; // SMTP password
$mail->SMTPSecure = ''; // Enable TLS encryption, `ssl` also accepted
$mail->Port = 111; // TCP port to connect to
$mail->setFrom('[email protected] ', 'naam afzender');
$mail->addAddress('[email protected]', 'Naam ontvanger'); // Add a recipient
//$mail->addAddress('[email protected]'); // Name is optional
$mail->addReplyTo('[email protected]', 'Information');
//$mail->addCC('[email protected]');
//$mail->addBCC('[email protected]');
//$mail->addAttachment('/var/tmp/file.tar.gz'); // Add attachments
//$mail->addAttachment('/tmp/image.jpg', 'new.jpg'); // Optional name
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = 'onderwerp';
$mail->Body = 'Beste, <br/><br/> bla bla bla bla blablabla.';
//$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
if(!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent';
}
?>
alleen nu moet ik dus van de geselecteerde persoon de email krijgen en die does toevoegen aan bovenstaande script, geen flauw idee hoe dat zou moeten.
hieronder nog een keer het scriptje dat de persoon selecteert. in de database staan: ID, naam en e-mail, dus aan elke naam zit een email vast waar dus de mail naar toe moet.
<select id="email" name="email">
<?php
//laat de lijst zien van namen van medewerkers, hier zit ook een e-mail aan gekoppeld.
define('Include',TRUE);
require 'database.php';//Needed for database connection
$query= "SELECT employee FROM email_register ORDER BY employee ASC";
$result= mysqli_query($db_con, $query);
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
$employee=$row["employee"];
echo "<option>
$employee
</option>";
}
?>
</select>
thanks, ik heb wel ongeveer een beeld van hoe het nu verder moet. Ga wel weer lekker verder prutsen ;) (met back-ups natuurlijk)
[size=xsmall]Toevoeging op 27/09/2016 11:54:44:[/size]
Vind het zelf nog wel moeilijk, heb 3 periodes PHP gehad en nu dus stage in een bedrijf. Maar naar mijn gevoel nog te weinig les gehad voor dit haha, maar komt wel goed hoop ik
Oke bedankt. Heb wel Linkedin maar gebruik het niet zo veel haha, misschien dat dit het veranderd. Overigens is het een Belgische groep en woon ik in Nederland, en zijn het specialisten, vereweg van wat ik ben ;)
[size=xsmall]Toevoeging op 28/09/2016 10:35:00:[/size]
Zou dit ook met javascript kunnen? ik heb het nu in een form gezet met als action mail.php
<form action="mail.php">
<select id="email" name="email">
<?php
define('Include',TRUE);
require 'database.php';//Needed for database connection
$query= "SELECT employee FROM email_register ORDER BY employee ASC";
$result= mysqli_query($db_con, $query);
echo "<option value='' disabled selected>Selecteer uw contactpersoon</option>";
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
$employee=$row["employee"];
echo " <option>$employee</option>";
}
?>
</select>
<br/></br>
<button type="submit" name="verzenden">Aanmelden</button>
</form>
Alleen ik kom er niet uit hoe ik dus van de geselecteerde persoon, zijn email en naam krijg en deze in mail.php invoerd op de plek van:
Alleen SELECT employee FROM aanpassen nog naar SELECT id, email, emplyee FROM
[size=xsmall]Toevoeging op 28/09/2016 11:00:05:[/size]
graag niet de mailadressen compleet in de <select> plaatsen graag. Dan is het namelijk een kleine moeite om daar willekeurige mailadressen in te stoppen.
als de <select> niet netjes werkt, zal je je form niet kunnen posten, en kan dus ook die andere code niet werken.
Immers, als jij geen id hebt, kun je geen naam /email uit de database vissen en is dus inderdaad $to niet gevuld.
Zie mijn opmerking over het controleren van de stappen of alles wel lukt en niet botweg doorlopen tot php echt niets meer kan.
wbt. de code "trouwens bij" hierboven:
daar moet je dus nog die query uitbreiden met in elk geval "id"
Mocht dan nog de opbouw fout gaan, zou ik in de bron van de pagina kijken (in je browser) om te zien wat er mis gaat. (ik hoop nu op een melding undefined index id melding)