allthatsleft Geschrieben 10. Juni 2004 Teilen Geschrieben 10. Juni 2004 echo "<a href=\"mailto:$row["mail"]\">"; echo $row["mail"]; echo "</a>"; [/PHP] Es geht nur um die erste Zeile. Will, dass die Mail-Adresse automatisch nach mailto: eingefügt wird. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etreu Geschrieben 10. Juni 2004 Teilen Geschrieben 10. Juni 2004 Probiere: echo "<a href=\"mailto:{$row["mail"]}\">"; echo $row["mail"]; echo "</a>"; [/PHP] Du kannst keine Objekte oder Arrays interpolieren. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
allthatsleft Geschrieben 10. Juni 2004 Autor Teilen Geschrieben 10. Juni 2004 wiedermal traumhaft! Ich danke Dir! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tobias-digital Geschrieben 10. Juni 2004 Teilen Geschrieben 10. Juni 2004 Ich würde das so machen: echo '<a href="mailto:'.$row['mail'].'">'.$row['mail'].'</a>'; [/PHP] Funktioniert! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
computercrustie Geschrieben 10. Juni 2004 Teilen Geschrieben 10. Juni 2004 Oder so: echo "<a href='mailto:$row[mail]'>$row[mail]</a>"; [/PHP] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etreu Geschrieben 10. Juni 2004 Teilen Geschrieben 10. Juni 2004 Oder so: echo "<a href='mailto:$row[mail]'>$row[mail]</a>"; [/PHP] 1. Fehler: der Array-Index und damit der Wert wird nicht interpoliert. 2. Fehler: Bezeichnung des index. Sobald es eine definierte Konstante mit dem Namen mail gibt, wird das Ergbnis noch fälscher?!? Naja, tritt dann ein weiterer Fehler auf. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
computercrustie Geschrieben 10. Juni 2004 Teilen Geschrieben 10. Juni 2004 1. Fehler: der Array-Index und damit der Wert wird nicht interpoliert. 2. Fehler: Bezeichnung des index. Sobald es eine definierte Konstante mit dem Namen mail gibt, wird das Ergbnis noch fälscher?!? Naja, tritt dann ein weiterer Fehler auf. zu 1. wird er wohl zu 2. wird es nicht Erst testen, dann meckern! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tobias-digital Geschrieben 10. Juni 2004 Teilen Geschrieben 10. Juni 2004 zu 1. wird er wohl zu 2. wird es nicht <kindisch> Wird er wohl! (zu beiden) </kindisch> Und sollte es doch funktionieren, dann ist's Glück. Zu der Sache mit den Anführungsstrichen: Der Befehl "echo" gibt einen String aus. In PHP kann man einen String in doppelte oder in einfache Anführungsstriche setzen. Doppelte Anführungsstriche: + Variablen können einfach in den String geschrieben werden: $foo = "Welt"; echo "Hallo $foo"; // Ergebnis: Hallo Welt[/PHP] - doppelte Anführunsstriche müssen maskiert werden, unpraktisch bei HTML-Tags: [PHP]$foo = "Welt"; echo "<p class=\"bar\">Hallo $foo</p>"; // Ergebnis: <p class="bar">Hallo Welt</p> Einfache Anführungsstriche: - Variablennamen werden als String ausgegeben: $foo = "Welt"; echo 'Hallo $foo'; // Ergebnis: Hallo $foo[/PHP] + doppelte Anführungsstriche müssen nicht maskiert werden, praktisch bei HTML-Tags: [PHP]$foo = "Welt"; echo '<p class="bar">Hallo '.$foo.'</p>'; // Ergebnis: <p class="bar">Hallo Welt</p> Zu den Arrays: Ein Array kann in PHP als Schlüssel einen Integer- oder String-Wert enthalten. Wie wir wissen werden Strings in doppelte oder einfache Anführungsstriche gesetzt. Sollten die Anführungsstriche fehlen etwa so $foo['bar'] = test; echo foo[bar]; // Ergebnis: test[/PHP] funktioniert das nur so lange bis es eine Konstante mit dem Namen bar gibt. Weil: Der Interpreter geht hin und sieht "$foo[bar]" und denkt sich: "Aha ein Array namens "$foo"! Als Schlüssel soll ich den Wert der Konstanten "bar" nehmen. Huch, die Konstante existiert nicht, also wandle ich den Konstantennamen "bar" einfach in den String "bar" um. E voila: Ich gebe "test" aus. Sollte jedoch eine Konstante namens "bar" existieren, hast Du ein Problem (Ich schalte die Notizfunktion des PHP-Interpreters ein, damit Du siehst was er dazu sagt): [PHP]error_reporting(E_ALL); $foo = array('bar' => 'test'); echo $foo[bar].'<br />'; // Ergebnis: test<br /> define ('bar', 'hallo'); echo $foo[bar].'<br />'; // Ergebnis: <br /> Quod erat demonstrandum! Bis denne, Gruß Tobias Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
computercrustie Geschrieben 11. Juni 2004 Teilen Geschrieben 11. Juni 2004 Erstens verbitte ich mir diese Bemerkung (<kindisch...>) - das kann man meinem Sohn sagen. Ich habe diese Ausdrucksform nur gewählt, um meinem Unmut darüber Ausdruck zu machen, dass in diesem Fall ohne es auszuprobieren behauptet wird, es würde nicht funktionieren. Aber was solls. @dersherriff: Deine Ausführung sind vollkommen korrekt, allerdings haben diese nichts mit meinem Beispiel zu tun: echo "<a href='mailto:$row[mail]'>$row[mail]</a>"; [/PHP] Der Index des Array $row ist hier zum einem ein String und wird, da die Variable bereits innerhalb Anführungszeichen steht, auch als ein solcher interpretiert. Und das ist nicht nur Zufall, sondern eine Regel des PHP-Interpreter. Zu dem Fall mit der Konstante: Konstantennamen werden innerhalb Anführungszeichen nicht interpretiert sondern als einfache Zeichenkette angenommen: [PHP] $row['mail']='me@domain.de'; define('mail','Fehler'); echo "<a href='mailto:$row[mail]'>$row[mail]</a>"; //ergibt: //<a href='mailto:me@domain.de'>me@domain.de</a> Würde der Interpreter die definierte Konstant 'mail' innerhalb des Strings finden, dann müsste wohl oder übel ein leerer Link herauskommen. Und bevor jetzt wieder jemand behauptet, Hochkommate als Trenner für Attributwerte innerhalb HTML-Tags würden zwar funktionieren, wären aber nicht korrekt: www.w3c.org Ich bitte aus diesem Grund alle (auch die diesen Thread nur lesen) sich vor dem posten zu informieren, bevor man es tut (zumindest wenn es auf diese Art und Weise geschieht). Ich nehme mich davon nicht aus, aber da ich hier unter Fachleuten bin, lese ich erst nach und schreibe dann. Noch etwas: bitte fühlt euch nicht angegriffen, der Eindruck könnte hier unter Umständen entstehen, ist aber in keinster Weise so gemeint (was in einem Gespräch im Angesicht nicht der Fall wäre) In diesem Sinne ein schönes Wochenende. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.