• 01.05.2024, 18:23
  • Registrieren
  • Anmelden
  • Sie sind nicht angemeldet.

 

Php & mysql -> Email aus Datenbank anklickb

Montag, 22. März 2004, 22:46

Moin !

Ich bastel grad an was aber ich komme grad nicht weiter ...

Und zwar hab ich name(n) & email Addresse(n) die er aus der mysql Datenbank ausliest - das geht ja noch ...

nun will ich aber das er die Email Addres anklickbar machen kann ...

habs bis jetzt so und find den fehler nicht ...

Quellcode

1
2
3
4
5
6
<a href="mailto:"
"$aemail";">
<?
echo
"$anick";
?></a>


MfG TrOuble

Re: Php & mysql -> Email aus Datenbank ankl

Montag, 22. März 2004, 22:55

Quellcode

1
2
3
<? php
echo "<a href=\"mailto:$aemail\">$anick</a>";
?>

also ich finds so schöner... ;)

Re: Php & mysql -> Email aus Datenbank ankl

Montag, 22. März 2004, 22:57

Zitat von »r1ppch3n«

Quellcode

1
2
3
<? php
echo "<a href=\"mailto:$aemail\">$anick</a>";
?>

also ich finds so schöner... ;)

...

wobei dann dies zu stande kommt :

Parse error: parse error in /home/www/web117/html/gallery/index.php on line 23

Re: Php & mysql -> Email aus Datenbank ankl

Montag, 22. März 2004, 22:59

du hast " um die eingefügte variable nach dem mailto, so geht das auch nicht.

btw: auch wenn man vorzugsweise <?php ... ?> statt <? ... ?> aus gründen der kompatibilität verwenden soll, so gibt es doch die kurzschreibweise <?= für <? echo, also wäre knapper:
<a href="mailto:<?= email ?>"><?= $aname ?></a>

wenn du allerdings drumrum auch mit echo und nicht über den php-escape-mode arbeitest, ist die deutlichste schreibweise diese hier:

Quellcode

1
echo sprintf('<a href="mailto:%s">%s</a>', $aemail, $aname);

bzw. mit "eingebautem echo":

Quellcode

1
printf('<a href="mailto:%s">%s</a>', $aemail, $aname);

wobei %s einigen sicher aus z.b. C bekannt vorkommen wird und ein platzhalter für einen string darstellt; %d für dezimalzahlen (mit diesen beiden kommt man für gewöhnlich aus). der erste parameter für sprintf() ist der zu parsende string mit den platzhaltern, alle weiteren argumente sind werte, die diese in der angegebenen reihenfolge für die platzhalter eingesetzt werden.
gerade bei links empfiehlt sich der gebrauch von sprintf() aus gründen der übersichtilchkeit sehr.

und noch ein tipp, wo wir gerade dabei sind:
anstelle von " sollte man einfache strings ohne variablen in ' (einfache hochkommata) einschließen, da diese strings nicht geparst werden und damit in der summe einiges an zeit sparen. einfach angewöhen. außerdem kann man damit vermeiden, die " in links escapen zu müssen - zeilenenden (\n) und dergleichen müssen jedoch unbedingt in " stehen, um korrekt interpretiert zu werden.
also nicht:

Quellcode

1
2
$name = "Peter";
$str = "Mein Name ist $name.";

sondern:

Quellcode

1
2
$name = 'Peter';
$str = 'Mein Name ist ' . $name . '.'


edit #1: fickenscheisse, kann mal jemand die ersetzung von "c a p" durch "kappe" dem forum austreiben? danke.

edit #2: ...und stattdessen lieber andere unflätige wörter maskieren?

Re: Php & mysql -> Email aus Datenbank ankl

Montag, 22. März 2004, 23:12

ok ich habs jetzt so gelöst :

Quellcode

1
2
3
<a href="mailto:
<? echo "$aemail"; ?>"><? echo "$anick";?>
</a>


... mit ' ' geht bei mir nicht ... ka wieso ... >:(

trotzdem thx

Re: Php & mysql -> Email aus Datenbank ankl

Montag, 22. März 2004, 23:38

so setzt du die variablen überflüssigerweise in einen string, der auch noch geparst werden muss, anstatt sie direkt auszugeben! variablen brauchen nicht in " stehen!