Variabelen overbrengen naar volgende pagina voor mail
hoe breng ik variabelen uit een PHP pagina waar gegevens worden opgeslagen in een databank over naar een volgende pagina waar deze gegevens worden verzonden per mail via PHPMailer?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
$InsertQuery->bindColumn("Naam_organisatie", "s", "".strtoupper(((isset($_POST["Naam_organisatie"]))?$_POST["Naam_organisatie"]:"")) ."", "WA_DEFAULT");
$InsertQuery->bindColumn("Adres_organisatie", "s", "".strtoupper(((isset($_POST["Adres_organisatie"]))?$_POST["Adres_organisatie"]:"")) ."", "WA_DEFAULT");
$InsertQuery->bindColumn("Postcode_organisatie", "s", "".strtoupper(((isset($_POST["Postcode_organisatie"]))?$_POST["Postcode_organisatie"]:"")) ."", "WA_DEFAULT");
$InsertQuery->bindColumn("Woonplaats_organisatie", "s", "".strtoupper(((isset($_POST["Woonplaats_organisatie"]))?$_POST["Woonplaats_organisatie"]:"")) ."", "WA_DEFAULT");
$InsertQuery->bindColumn("BTW_plichtig", "s", "".strtoupper(((isset($_POST["BTW_plichtig"]))?$_POST["BTW_plichtig"]:"")) ."", "WA_DEFAULT");
$InsertQuery->bindColumn("Email", "s", "".strtoupper(((isset($_POST["Email"]))?$_POST["Email"]:"")) ."", "WA_DEFAULT");
....
$InsertQuery->saveInSession("");
$InsertQuery->execute();
$InsertGoTo = "Registratie_mail.php";
if (function_exists("rel2abs")) $InsertGoTo = $InsertGoTo?rel2abs($InsertGoTo,dirname(__FILE__)):"";
$InsertQuery->redirect($InsertGoTo);
}
?>
$InsertQuery->bindColumn("Naam_organisatie", "s", "".strtoupper(((isset($_POST["Naam_organisatie"]))?$_POST["Naam_organisatie"]:"")) ."", "WA_DEFAULT");
$InsertQuery->bindColumn("Adres_organisatie", "s", "".strtoupper(((isset($_POST["Adres_organisatie"]))?$_POST["Adres_organisatie"]:"")) ."", "WA_DEFAULT");
$InsertQuery->bindColumn("Postcode_organisatie", "s", "".strtoupper(((isset($_POST["Postcode_organisatie"]))?$_POST["Postcode_organisatie"]:"")) ."", "WA_DEFAULT");
$InsertQuery->bindColumn("Woonplaats_organisatie", "s", "".strtoupper(((isset($_POST["Woonplaats_organisatie"]))?$_POST["Woonplaats_organisatie"]:"")) ."", "WA_DEFAULT");
$InsertQuery->bindColumn("BTW_plichtig", "s", "".strtoupper(((isset($_POST["BTW_plichtig"]))?$_POST["BTW_plichtig"]:"")) ."", "WA_DEFAULT");
$InsertQuery->bindColumn("Email", "s", "".strtoupper(((isset($_POST["Email"]))?$_POST["Email"]:"")) ."", "WA_DEFAULT");
....
$InsertQuery->saveInSession("");
$InsertQuery->execute();
$InsertGoTo = "Registratie_mail.php";
if (function_exists("rel2abs")) $InsertGoTo = $InsertGoTo?rel2abs($InsertGoTo,dirname(__FILE__)):"";
$InsertQuery->redirect($InsertGoTo);
}
?>
In de PHP mail pagina wens ik dan oa. volgende variabelen te gebruiken:
Alvast bedankt!!
Edit:
Code-tags geplaatst. Zie ook de Veelgestelde Vragen.
Gewijzigd op 18/07/2020 17:04:47 door - Ariën -
Heb gezocht naar de codetags maar niet gevonden. Waar vind ik deze om in mijn bericht aan te brengen?
Hoe moet ik een sessie starten?
Alvast bedankt
Of als je een referentie(-id) hebt van het record, dan hoef je enkel deze referentie door te geven, en niet nogmaals alle informatie over te hevelen.
En als je op een zeker moment de beschikking hebt over de informatie, waarom zou je dan eerst de informatie overhevelen naar een andere pagina, om daar dan vervolgbewerkingen op los te laten? Dat doe je dan toch direct?
Verder lijkt het erop dat er allemaal extra functionaliteit is opgehangen aan "InsertQuert", zoals het wegschrijven naar een sessie (saveInSession?) en het redirecten naar een andere pagina (redirect?). Weet niet helemaal of je dat allemaal op één hoop moet gooien want het invoegen van een record in de database staat in principe los van wat er in je sessie zit en heeft ook weinig van doen met routing door je applicatie...
bedankt voor de input. Inderdaad zou ik in dezelfde bewerking de gegevens willen mailen. Zo deed ik het vroeger in PHP 5.6. Nu moest ik overschakelen naarPHP 7.4.2 en is het zoeken. -Het inserten in de database heeft MySQLi automatisch zo gescript. Als ik echter op dezelfde PHP pagina opok nog de mail wil versturen, loopt het fout bij het opslaan. Daarmee trachtte ik de gegevens door te sturen naar een nieuwe pagina.
Heb je enig idee hoe ik op dezelfde pagina de insert en de mail kan bekomen? Indien niet mogelijk hoe ik dat de gegevens overbreng naar de volgende PHP pagina.
Alvast bedankt
Gewijzigd op 18/07/2020 18:29:18 door - Ariën -
Gewijzigd op 18/07/2020 18:28:50 door - Ariën -
Uitgaande van het codefragment hierboven in het oorspronkelijke bericht zou je tussen regel 11 en 12 een stuk code in kunnen voegen. Als het goed is zit dan de info al in de database en zou je met behulp van de informatie in $_POST een e-mailbericht kunnen opstellen.
Thomas van den Heuvel op 18/07/2020 22:13:35:
Uitgaande van het codefragment hierboven in het oorspronkelijke bericht zou je tussen regel 11 en 12 een stuk code in kunnen voegen. Als het goed is zit dan de info al in de database en zou je met behulp van de informatie in $_POST een e-mailbericht kunnen opstellen.
Dag Thomas,
Heb ik inderdaad reeds geprobeerd. Maar ik krijg dan bij het opslaan van het bestand een foutmelding "Een script in bestand wordt al gedurende lange tijd uitgevoerd. Wilt U doorgaan?".
Blijkbaar lukt het dus niet bij het opslaan van gegevens ook nog eens een mail te versturen.
Yves Robeyst op 19/07/2020 12:24:34:
Een script in bestand wordt al gedurende lange tijd uitgevoerd. Wilt U doorgaan?
Indien dat de letterlijke melding is, dat is geen standaard PHP-(fout)melding. Dan zou het interessant kunnen zijn om na te gaan waar deze melding vandaan komt en wat deze betekent, maar het invoegen van één record en het vervolgens versturen van een mailtje in één zelfde bewerking zou geen enkel probleem moeten zijn.
Heb je toevallig bij wijze van test al eens geprobeerd om een e-mailbericht te versturen in een los PHP-bestand ofzo? Gewoon om na te gaan of de mailfunctionaliteit wel naar behoren werkt.
Ja de mailfunctionaliteit werkt perfect. Ik denk dat de foutmelding van Dreamweaver komt.
Gewijzigd op 19/07/2020 13:00:01 door - Ariën -
Yves, het is niet nodig om steeds het laatste bericht integraal te quoten. Onderaan staat een tekstvak voor 'snel reageren'
Gewijzigd op 19/07/2020 13:03:05 door - Ariën -