SELECT * FROM vemailnewsletter where email = "email@server.de"

Hi!

Hm, keine Ahnung, kenne mich mit Php nicht aus. :(

Aber vielleicht hilft das:

$mail = mysql_escape_string($mail);
$query = "SELECT * FROM emailnewsletter WHERE email='$mail' ";
mysql_query($query);

von php.net
 
Zuletzt bearbeitet:
allerdings musst Du

$mail (dies ist die Variable) auch den Wert zuweisen, um es im SQL-String auslesen zu können.

Wobei ich nicht verstehe, varchar(50) sollte Dir auch ein @ als Zeichen auslesen, welches Du dann im html-Code als Feld <a href="mailto:"...">Email</a> zuweisen kannst.

Feldformatiierung TEXT (Access) ist dem varchar() ähnlich.
Text (blob) in mySQL ist ähnlich MEMO (Access)

Von daher, finde ich, ist Deine Formatierung schon korrekt.
 
Zuletzt bearbeitet:
Hmm, eine konkrete Lösung kann ich dir jetzt nicht anbieten, aber du könntest das Problem schonmal eingrenzen, indem du einen Testdatensatz ohne das "@" eingibst.
Wenn das , wissen wir zumindest woran es liegt.

Ausserdem wäre es gut, wenn du uns sagst, um welche Datenbank es sich handelt und wie du darauf zugreifst.

Gruss,

durin
 
Also bei mir funktioniert das Auslesen der Email-Adress incl. @-Zeichen unter mySQL in php als auch mit mySqL oder Access in ASP.

Lässt Du bestimmte Zeichen nicht zu ?
Eine Lösung aber von hinten durchs Knie wäre, Du replacest das @-Zeichen durch eine bestimmte Zeichenfolge bei der Eingabe, nutzt diesen String in Deiner Bedingung, bei der Ausgabe replacest Du die Zeichenfolge wieder zurück.

Wie gesagt, nicht die optimale Lösung. Aber wenns wirklich an dem Zeichen liegt ?

Oder werden evtl. bei der Eingabe Leerzeichen mit hinzugefügt, die man vordergründig nicht sieht? Die Ursache kann auch schon mal im html-Code liegen. Diese sollte man auf jeden Fall wegtrimmen.

bsp. ASP

iEmail = Request.Form("Email")
nEmail = trim(iEmail)
SQL = "select Email from [Tabelle] where email = '" & nEmail & "' "

Trotz allem, dies sind alles mögliche Fehlerquellen.
 
Zuletzt bearbeitet:
normalerweise sollte das @ kein Problem in der Datenbank an sich darstellen.
ich würde die ganze klamotte in hochkommata setzen und dann in die DB rein-
schreiben.
Code:
$email = 'hunz@kunz.xyz' ;

insert into tabelle ( $email );
(ich achte jetzt einfach mal nicht auf den tabellenaufbau)

wenn das mit dem auslesen dann immer noch nicht klappt, teil die mailadresse
und leg dir 2 spalten in der tabelle an.
Code:
$mailname = "hunz";
$domain = "kunz.xyz";

insert into tabelle ($mailname, $domain);
nach dem auslesen einfach wieder zusammenhängen:
Code:
$email = $mailname . "@" . $domain;
hoffe das werkelt. ;-)
 
Zurück