Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Web Development
You last visited: Today at 14:46

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Mail mit Variable im Link

Discussion on Mail mit Variable im Link within the Web Development forum part of the Coders Den category.

Reply
 
Old   #1
 
Legithos's Avatar
 
elite*gold: 95
Join Date: Nov 2009
Posts: 669
Received Thanks: 47
Mail mit Variable im Link

Hallo liebe Devs,

ich bin am verzweifeln. Ich würde gerne einen Link in eine von mir via mail() versandte E-Mail einbauen, um sich von dem Newsletter abzumelden. Dementsprechend muss der Link zur Abmeldung variable sein, da natürlich jeder User sich selbst und keinen anderen abmelden soll.

Während wir in der while-Schleife sind (damit ich von jedem dem Newsletter angemeldetem User die E-Mail bekomme), lege ich diese auf meine variabel $mail_reciever

Code:
$mail_reciever = htmlspecialchars($newsletter["user_email"]);
Anschließend versuche ich einen Link in meinen E-Mail-Text einzubauen, welcher sich natürlich von User zu User in der while-Schleife ändern soll.

Code:
$mail_text = "<a href='www.musterdomain.de/abmelden.php?user=" . $mail_reciever . "'>Abmelden</a>"
Wenn ich das jedoch als mail nun versende und in der E-Mail den Link kopiere, bekomm ich folgendes.

Code:
'www.musterdomain.de/abmelden.php?user=" . $mail_reciever . "'
Der Witz an der Sache ist, dass wenn ich die Variable nicht als Link (also ohne den html-tag) verschicke, siehe

HTML Code:
$mail_text = "www.musterdomain.de/abmelden.php?user=" . $mail_reciever
funktioniert alles einwandfrei.

Vielleicht kann mir ja jemand helfen.

Danke schonmal und Grüße,

Legithos
Legithos is offline  
Old 05/27/2020, 21:35   #2
 
Mad0ck's Avatar
 
elite*gold: 313
Join Date: Oct 2014
Posts: 1,367
Received Thanks: 284
Quote:
Originally Posted by Legithos View Post
Hallo liebe Devs,

Legithos
Also hab das grad getestet.
PHP Code:
$mail_reciever '';
$tag "<a href='www.musterdomain.de/abmelden.php?user=" $mail_reciever "'>Abmelden</a>";
echo(
$tag); 
Erzeugt ne verlinkung auf die url





Hier aus dem Network tab.



Hat also iwas mit der Funktion / lib vom Email versenden zutun i guess
Mad0ck is offline  
Old 05/28/2020, 01:18   #3
 
Legithos's Avatar
 
elite*gold: 95
Join Date: Nov 2009
Posts: 669
Received Thanks: 47
Quote:
Originally Posted by Mad0ck View Post
Hat also iwas mit der Funktion / lib vom Email versenden zutun i guess
Das wird der springende Punkt sein. Ich finde nur leider nichts was mir weiterhilft.
Legithos is offline  
Old 05/28/2020, 07:50   #4
 
Mikesch01's Avatar
 
elite*gold: 203
Join Date: Sep 2007
Posts: 732
Received Thanks: 190
Vermutlich irgendwo ein Fehler innerhalb des anderen Codes. Zeig uns doch mal einen größeren Ausschnitt deines Codes.
Mikesch01 is offline  
Old 05/28/2020, 11:35   #5
 
Legithos's Avatar
 
elite*gold: 95
Join Date: Nov 2009
Posts: 669
Received Thanks: 47
Ich geh stark davon aus, dass es mit ' und " und deren Verschachtelung zusammenhängt.

Ich bin inzwischen soweit, dass ich den kompletten Link in der E-Mail richtig darstellen kann. Problem ist, dass es kein eigentlicher Link ist.

Code:
$mail_topic = "Testtopic";
$mail_receiver = "";
$mail_sent = ""
$mail_header  = "MIME-Version: 1.0\n";
$mail_header .= "Content-type: text/html; charset=utf-8\r\n";
$mail_header .= "From: $mail_sent\r\n";
$mail_header .= "X-Mailer: PHP ". phpversion();

$mail_text = PROJECTLINK . "musterpfad/musterpfad/unsibscribe.php?user='" . htmlspecialchars($mail_receiver) . "'";

mail(htmlspecialchars($mail_receiver), $mail_topic, $mail_text, $mail_header);
Der Code funktioniert einwandfrei !
Code:
Ausgabe: localhost/musterpfad/musterpfad/unsubscribe.php?email=''
Nur wird halt der Link nicht als Link, sondern als Text ausgegeben. Sobald ich einen Link als wirklichen Link einbauen will

Code:
$mail_text = "<a href='" . PROJECTLINK . "musterpfad/musterpfad/unsibscribe.php?user='" . htmlspecialchars($mail_receiver) . "'>LINK</a>";
funktioniert es nicht mehr. Selbst wenn ich die ' ' bei $mail_receiver weg lasse funktionierts nicht. Lieber wäre mir natürlich mit den ' '.

Code:
$mail_text = "<a href='" . PROJECTLINK . "musterpfad/musterpfad/unsibscribe.php?user=" . htmlspecialchars($mail_receiver) . ">LINK</a>";
Legithos is offline  
Old 05/28/2020, 12:10   #6
 
Mad0ck's Avatar
 
elite*gold: 313
Join Date: Oct 2014
Posts: 1,367
Received Thanks: 284


Scheint das gleiche Problem gewesen zu sein
Mad0ck is offline  
Old 05/28/2020, 13:19   #7
 
Legithos's Avatar
 
elite*gold: 95
Join Date: Nov 2009
Posts: 669
Received Thanks: 47
Quote:
Originally Posted by Mad0ck View Post


Scheint das gleiche Problem gewesen zu sein
Hilft mir leider nicht, da ich den header ja bereits identisch konfiguriert habe.
Legithos is offline  
Old 05/28/2020, 14:00   #8
dotCom
 
Devsome's Avatar
 
elite*gold: 9842
The Black Market: 107/0/0
Join Date: Mar 2009
Posts: 16,845
Received Thanks: 4,675
Probiere es doch mit .
Devsome is offline  
Old 05/28/2020, 14:44   #9
 
Legithos's Avatar
 
elite*gold: 95
Join Date: Nov 2009
Posts: 669
Received Thanks: 47
Quote:
Originally Posted by Devsome View Post
Probiere es doch mit .
Verstehe nicht ganz an welcher Stelle mir hier sprinft() weiterhelfen kann ?
Legithos is offline  
Old 05/28/2020, 15:34   #10
dotCom
 
Devsome's Avatar
 
elite*gold: 9842
The Black Market: 107/0/0
Join Date: Mar 2009
Posts: 16,845
Received Thanks: 4,675
Quote:
Originally Posted by Legithos View Post
Verstehe nicht ganz an welcher Stelle mir hier sprinft() weiterhelfen kann ?
Ohne zu testen, würde ich es so irgendwie machen.

Code:
$mail = htmlspecialchars('');
$projectLink = 'https://devsome.com';

$mailBody = 'Hallo Benutzer, dies ist eine E-Mail.' .
  'Bitte rufe diesen Link auf <a href="%sunsub.php?user=%s">Hier</a> um dich abzumelden.';

$mail = sprintf($mailBody, $mail, $projectLink);
Wenn dann dort auch die Links nicht gescheit sind, stimmt was nicht an deinen Einstellungen für die E-Mail versenden.
Devsome is offline  
Old 05/28/2020, 16:31   #11
 
Legithos's Avatar
 
elite*gold: 95
Join Date: Nov 2009
Posts: 669
Received Thanks: 47
Quote:
Originally Posted by Devsome View Post
Ohne zu testen, würde ich es so irgendwie machen.

Code:
$mail = htmlspecialchars('');
$projectLink = 'https://devsome.com';

$mailBody = 'Hallo Benutzer, dies ist eine E-Mail.' .
  'Bitte rufe diesen Link auf <a href="%sunsub.php?user=%s">Hier</a> um dich abzumelden.';

$mail = sprintf($mailBody, $mail, $projectLink);
Wenn dann dort auch die Links nicht gescheit sind, stimmt was nicht an deinen Einstellungen für die E-Mail versenden.
Funktioniert so leider auch nicht. Kann aber natuerlich auch an meinem lokalen E-Mail-Server liegen. HTML im Allgemeinen funktioniert auf alle Faelle.
Legithos is offline  
Old 05/28/2020, 18:23   #12


 
False's Avatar
 
elite*gold: 0
The Black Market: 243/0/0
Join Date: Apr 2011
Posts: 11,117
Received Thanks: 2,436
Habe mir den Code nicht weiter angesehen, da ich noch "nie" die mail Funktion von php direkt genutzt habe.
Wieso machst du dir überhaupt den aufwand ? (Gibt genug zu beachten bei Mails)
Nutz einfach vorhanden und gut getesteteten Code z.B. SwiftMail, PHPMailer o.ä.
Dann sollte dein Beispiel aus dem ersten Beitrag aufjedenfall funktionieren.
False is offline  
Old 05/28/2020, 19:20   #13
 
Legithos's Avatar
 
elite*gold: 95
Join Date: Nov 2009
Posts: 669
Received Thanks: 47
Quote:
Originally Posted by False View Post
Habe mir den Code nicht weiter angesehen, da ich noch "nie" die mail Funktion von php direkt genutzt habe.
Wieso machst du dir überhaupt den aufwand ? (Gibt genug zu beachten bei Mails)
Nutz einfach vorhanden und gut getesteteten Code z.B. SwiftMail, PHPMailer o.ä.
Dann sollte dein Beispiel aus dem ersten Beitrag aufjedenfall funktionieren.
Soweit ich weiß sind die meisten Anbieter für solche Zusätze lizensiert und fallen für ein kommerzielles Projekt raus. Dementsprechend muss ich mich mit dem Vergnügen, was ich zur Verfügung habe.
Legithos is offline  
Old 05/28/2020, 19:23   #14


 
False's Avatar
 
elite*gold: 0
The Black Market: 243/0/0
Join Date: Apr 2011
Posts: 11,117
Received Thanks: 2,436
Paar Sekunden googeln und du hättest gesehen das der Swiftmailer unter der MIT Lizenz entwickelt wird ().
Somit kann man das ohne Probleme Nutzen.
False is offline  
Old 05/28/2020, 20:28   #15
 
Legithos's Avatar
 
elite*gold: 95
Join Date: Nov 2009
Posts: 669
Received Thanks: 47
Quote:
Originally Posted by False View Post
Paar Sekunden googeln und du hättest gesehen das der Swiftmailer unter der MIT Lizenz entwickelt wird ().
Somit kann man das ohne Probleme Nutzen.
Das ist schon richtig, nur will ich mich von "License and copyright notice" fernhalten. Ich benutze weder ein Framework, noch - abgesehen von Bootstrap, den Programmiersprachen und Mysql - Werke anderer Personen. Ja, das mag für mach einen nicht verständlich und extrem langwierig und mühselig klingen alles selbst zu programmieren, jedoch habe ich nach 5 Jahren Arbeit und 2 dicken Büchern über PHP das Schlimmste schon hinter mir. Ich scheue mich einfach vor kostspieligen Privatklagen/Unterlassungsklagen wegen vergessenen Copyrighthinweisen oder Urheberrechtsverletzungen!

Wenn ich das jetzt aber mal alles zusammenfassen kann, ist es mit der PHP eigenen mail()-Funktion nicht möglich oder mir kann keiner von euch helfen ?
Legithos is offline  
Reply


Similar Threads Similar Threads
(B) E-Mail Listen zu verkaufen! Werben Sie per E-Mail! (S) E-Mail & PP
10/23/2016 - elite*gold Trading - 3 Replies
Liebe Elitepvpers, ich biete euch hiermit die Möglichkeit eigenständig zu werben. Durch einen Kauf einer meiner Listen, können Sie für Ihre gewerbliche Tätigkeit Käufer oder Besucher finden. Damit erhöhen Sie für eine Website die Traffic, für eine Software die Nutzer und für ein Forum die User. In vielen verschiedenen Formen kann Ihnen dieses Angebot gegenüber anderen Konkurrenten einen großen Vorteil verschaffen. Werbung durch E-Mails wird Ihr Gewerbe weiter vorantreiben, in welcher...
Variable in Variable
08/09/2016 - AutoIt - 2 Replies
Ich habe ein kleines Problem. Ich bin neu in AutoIt. mein Problem ist folgendes: Ich will in einer Variable einen Path speicher: $NameVar = C:\Users\ Das ist kein Problem. Aber hinter "C:\Users\" soll jetzt aus einer anderen Variable ein Ordner Name genommen werden. Also in etwa: $NameVar = Ordner2 $PathVar = C:\Users\ $NameVar nur so geht das ja nicht ganz ... was kann ich machen? Die Idee dahinter ist das er einen Ordner mit DirCopy() mehrfach erstellt im gleichen Ordner mit...
Cost of accessing a casted variable vs. assigning the casted variable? (C#)
01/05/2011 - CO2 Programming - 5 Replies
I know that in unmanaged C++, casting is at compile-time, so it's better to avoid the assignment and simply access it for all instances. However, in C#, I have no idea since I'm pretty new to it.
Überprüfen ob Variable Eine Variable ist
10/16/2010 - AutoIt - 26 Replies
Hey leute ich wollte fragen ob/wie man überprüfen kann ob eine Variable eine Variable ist z.b. so $k = 1 $i = $k if $i = VARIABLE Then msgbox(0,'$i ist eine variable!!','') endif PS:Wp releast man nochma TuT (z.b. für metin2??)



All times are GMT +1. The time now is 14:47.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.