php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 28.08.2006, 20:52  
Erfahrener Benutzer
 
Registriert seit: 16.03.2004
Beiträge: 170
Kori
Standard Funktion in einem Echo

ich möchte eine funktion in einem echo ausführen und zwar wie folgt:

Funktion:
PHP-Code:
<?
function lnk()
{
srand(microtime()*1000000);
$zufall rand(1,85);
echo 
"werbung2/".$zufall.".jpg";
}


?>
das echo:
PHP-Code:
echo "[url='http://partner5.de'][img]"lnk();"[/img][/url]"
Nur leider funktioniert das nicht, ich kann mir einfach nicht erklären bzw. ich hab nirgendswo herrausfinden können wie man funktionen intern
eines echos ausführt.

Ich hoffe mir kann jemand weiterhelfen!

mfg
Kori
Kori ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 28.08.2006, 20:59  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Fehlersuche am falschem Ort würd ich ma sagen:

PHP-Code:
echo "Ich "."bin"." ein"." Text"
Ergo muss es für dich heißen

PHP-Code:
echo "<a target=\"_blank\" href=\"http://partner5.de\"><img border=\"1\" src=\"" lnk() . "\"></a> 
Das man lieber doppelte Anführungszeichen in HTML verwendet, hab ich gleich mal mit korrigiert
KingCrunch ist offline  
Alt 28.08.2006, 20:59  
Erfahrener Benutzer
 
Registriert seit: 16.03.2004
Beiträge: 170
Kori
Standard

Zitat:
Zitat von Cineplex
Funktionen werden in Strings genauso wie Variablen und Array behandelt:

".Ink()."
Nun ist die Ausgabe :
werbung2/57.jpg<img border='1' src=>

dabei sollte es ja im src="HIER" stehen, wie kann ich das realisieren?
Kori ist offline  
Alt 28.08.2006, 21:01  
Erfahrener Benutzer
 
Registriert seit: 16.03.2004
Beiträge: 170
Kori
Standard

Zitat:
Zitat von KingCrunch
Fehlersuche am falschem Ort würd ich ma sagen:

PHP-Code:
echo "Ich "."bin"." ein"." Text"
Ergo muss es für dich heißen

PHP-Code:
echo "<a target=\"_blank\" href=\"http://partner5.de\"><img border=\"1\" src=\"" lnk() . "\"></a> 
Das man lieber doppelte Anführungszeichen in HTML verwendet, hab ich gleich mal mit korrigiert
Bei dir exakt das gleiche! wie ich ein thread zuvor geschrieben hab!
Kori ist offline  
Alt 28.08.2006, 21:04  
Erfahrener Benutzer
 
Registriert seit: 16.02.2006
Beiträge: 303
tinchen
Standard

PHP-Code:
<?php function lnk() {

    
//srand(microtime()*1000000);

    
$zufall rand(1,85);
    
    
$src 'werbung2/'.$zufall.'.jpg';

    return 
$src;
}
?>

<?php 

$scr 
lnk();

echo 
'[url="http://partner5.de"][img]'.$scr.'[/img][/url]';

?>
Gruß
Tine
tinchen ist offline  
Alt 28.08.2006, 21:14  
Erfahrener Benutzer
 
Registriert seit: 16.03.2004
Beiträge: 170
Kori
Standard

Zitat:
Zitat von tinchen
PHP-Code:
<?php function lnk() {

    
srand(microtime()*1000000);

    
$zufall rand(1,85);
    
    
$src 'werbung2/'.$zufall.'.jpg';

    return 
$src;
}
?>

<?php 

$scr 
lnk();

echo 
'[url="http://partner5.de"][img]'.$scr.'[/img][/url]';

?>
Gruß
Tine
danke, funktioniert bestens!
Kori ist offline  
Alt 28.08.2006, 21:17  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

srand ist nutzlos (in dem Kontext), da rand die Initialisierung implizit durchführt. Ebenso kann auf $scr verzichtet werden, aber das wurd scho ma erwähnt ^^
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
Alt 28.08.2006, 21:27  
Erfahrener Benutzer
 
Registriert seit: 16.02.2006
Beiträge: 303
tinchen
Standard

Zitat:
Wieso umständlich, wenn es auch einfach geht?
Gegen den direkten Zugriff auf die Funktion spricht doch nichts.
Sicherlich richtig, aber ich persönlich finde es so übersichtlicher.
Gerade dann, wenn man noch zig Werte verarbeiten sollte.
Da gibt immer so viele Möglichkeiten etwas aufzuschreiben - bei der Umsetzung scheiden sich sowieso die Geister.

Ich hatte zwischendurch TV geschaut und etwas länger gebraucht, sonst hätte ich gar nicht erst gepostet.

Gruß
Tine
tinchen ist offline  
Alt 28.08.2006, 21:38  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von Cineplex
Da kann gar nicht die selbe Fehlermeldung kommen!
Die Variante von KingCrunch ist eigentlich richtig.
Nein, sie ist nicht richtig.
KingCrunch (und Du ) hat übersehen, dass die Funktion Ink() nicht die gewünschte Ausgabe per return zurückliefert, sondern gleich selbst mit echo ausgibt.

Da natürlich vor der Ausgabe durch echo erstmal feststehen muss, was ausgegeben werden soll, muss Ink() vorher aufgerufen werden. Dabei wird die Ausgabe erzeugt.
Anschließend wird an der Stelle, wo .Ink(). steht, ein leerer Rückgabewert in die Ausgabe eingefügt.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 28.08.2006, 21:41  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Ma abgesehen davon, dass du Recht hast, dass ich das echo übersehen habe, liegst du falsch, weil der Aufruf

PHP-Code:
$scr lnk(); 
$scr ebenfalls leer lässt und die Ausgabe der Funktion vor dem eigentlichen Link landet Also genau wie bei mir....

Das echo aus der Funktion muss noch in return korrigiert werden
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Hash-Werte Raito PHP Tipps 2008 10 07.04.2008 15:47
Datenbankeintrag funzt nicht Raito PHP Tipps 2008 27 07.04.2008 09:54
$_POST Übergabe Problem mit Daten der MySql prinzli PHP Tipps 2008 20 31.10.2007 12:53
Server für shell_exec() / exec() vorbereiten Martek Server, Hosting und Workstations 2 16.03.2007 15:03
PHP-Frames PHP Tipps 2007 10 17.12.2005 22:17
Menü mit Unterpunkten supertramp Beitragsarchiv 7 18.10.2005 22:40
Guestbook Chrescht PHP Tipps 2005-2 14 28.06.2005 13:10
Tabelle verzerrt PHP Tipps 2005 8 25.04.2005 21:54
guestbook problem #2 PHP Tipps 2005 7 04.01.2005 11:19
Partykalender, Probleme PHP Tipps 2004-2 6 26.12.2004 13:19
problem mit ausgabe bei einer "tmp"-table... nautiluS PHP Tipps 2004-2 0 20.12.2004 15:12
get und if funktion PHP Tipps 2004 14 23.09.2004 04:01
Wo liegt der Fehler - Query was empty Anuschka PHP Tipps 2004 7 24.08.2004 02:59
Datenbankergebnis in Array und per Index darauf zugreifen PHP Tipps 2004 7 30.07.2004 18:39
[Erledigt] Datenübergabe PHP Tipps 2004 2 20.07.2004 19:06

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php function in echo

Alle Zeitangaben in WEZ +2. Es ist jetzt 12:38 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.