php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 15.05.2005, 16:56  
Gast
 
Beiträge: n/a
Standard uebergebene variable ausgeben...warum gehts nur kompliziert?

Tagchen!

Eine ganz kurze Frage, mit einer hoffentlich noch kürzeren Antowrt

Erstmal meine Index.php:
Code:
<FORM ACTION="tuwas.php" METHOD=POST>
	<INPUT NAME="beliebigername">
	<INPUT TYPE="submit">
	</FORM>
Dazu will ich nun eine Ausgabe mache, jetzt frage ich mich aber warum dies NICHT tut ....
PHP-Code:
<?php
echo "Sie haben $_POST['beliebigername'] eingegeben. ";
?>
...dieses....
PHP-Code:
<?php
echo $_POST['beliebigername'];
?>
...und diese aber schon:
PHP-Code:
<?php
    $name
=$_POST['beliebigername'];
        echo 
"Sie haben $name eingegeben. ";
?>
Ich hoffe mir kann jemand eine logischer erklärung geben, warum das erste Beispiel nicht funktioniert. Habe auch schon versucht das "$_POST['beliebigername']" in Klammern und/oder Anführungzeichen zu setzten --> ohne Erfolg.

greez zet
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 15.05.2005, 17:01  
Erfahrener Benutzer
 
Registriert seit: 20.01.2005
Beiträge: 1.557
PHP-Kenntnisse:
Fortgeschritten
Buhmann ist zur Zeit noch ein unbeschriebenes Blatt
Buhmann eine Nachricht über ICQ schicken Buhmann eine Nachricht über MSN schicken
Standard

Zitat:
Code:
<FORM ACTION="tuwas.php" METHOD=POST> 
   <INPUT NAME="beliebigername"> 
   <INPUT TYPE="submit"> 
   </FORM>
AHHHH hast du schonmal was von XHTML gehört?
So muss das aussehen:
Code:
<form action="tuwas.php" method="post"> 
   <input name="beliebigername" /> 
   <input type="submit" /> 
</form>
desweiteren ist das nich kompliziert, sondern du hast das System der Variablenverkettung nicht verstanden. Strings (erkennbar an den Anführungszeichen vorne und hinten) sind ZEICHENketten, keine VARIABLENketten.

Php erlaubt zwar variablen in Strings, die von doppelten Anführungszeichen eingeschlossen sind, aber ich würde das lassen, weil es eben in manchen Fällen, wie bei deinem, nicht zum gewünschten Ergebnis führt.

Deshalb Solltest du eben einfach einen String nehmen ( "..." ), dann einen . (Punkt) als Verkettungsoperator, deine Variable, wieder ein Punkt und dann der Reststring. Dann hast du solche Probleme nicht mehr.
Buhmann ist offline  
Alt 15.05.2005, 17:18  
Gast
 
Beiträge: n/a
Standard

auf die gefahr hin richtig blöd dazu stehen....worin besteht der große unterschied zwischen deinem html-code und meinem? vorallem verstehe ich die "/" bei den inputs nicht so ganz.
(sei bitte net so hart zu mir und denke dran, das du auch mal klein angefangen hast )
greez zet
 
Alt 15.05.2005, 17:42  
Gast
 
Beiträge: n/a
Standard

Dein Beispiel von oben funktioniert so

aus so
PHP-Code:
<?php

<?php 
echo "Sie haben $_POST['beliebigername'] eingegeben. "
?> 
#mache so


<?php 
echo "Sie haben ".$_POST['beliebigername']." eingegeben. "
?>
 
Alt 15.05.2005, 17:47  
Gast
 
Beiträge: n/a
Standard

Zitat:
auf die gefahr hin richtig blöd dazu stehen....worin besteht der große unterschied zwischen deinem html-code und meinem? vorallem verstehe ich die "/" bei den inputs nicht so ganz.
Buhmann hat deinen COde halt auf XHTML getrimmt. Attribute+Werte klein, Werte in Anführungszeichen. Tags die kein End-Tag besitzen wie z.B. input (wäre ja eigentlich </input>) bekommen ans Ende einen Slash (/).
 
Alt 15.05.2005, 17:55  
Gast
 
Beiträge: n/a
Standard

ok...dann habe ich das schon richtig verstanden das das nur eine optische sache ist, oder gibt es browser die mit meinem code nicht klar kommen?

danke für eure hilfe. jetzt klaptts so wie ichs gern hätt

greez zet

Muss echt mal nen fettes lob ueber das forum hier ablassen...hier wird einem schnell geholfen!
 
Alt 15.05.2005, 18:06  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von Buhmann
AHHHH hast du schonmal was von XHTML gehört?
So muss das aussehen:
Pff, was ein Quatsch.

Wenn er im Doctype sagt, dass er HTML 4.01 o.Ä. verwendet, dann ist das vollkommen in Ordnung was er da schreibt.
imported_Ben ist offline  
Alt 15.05.2005, 18:20  
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 Buhmann
desweiteren ist das nich kompliziert, sondern du hast das System der Variablenverkettung nicht verstanden. Strings (erkennbar an den Anführungszeichen vorne und hinten) sind ZEICHENketten, keine VARIABLENketten.
Das von dir vorgeschlagene Vorgehen mit Beenden des Strings, Verkettung mit ., Angabe der Variable, Verkettung mit . und Neubeginn des Strings ist doch wohl reichlich umständlich.

Wenn Strings in "" schon so definiert sind, dass sie Variablen enthalten dürfen, warum dann nicht durchgängig?

Zitat:
Zitat von Buhmann
Php erlaubt zwar variablen in Strings, die von doppelten Anführungszeichen eingeschlossen sind, aber ich würde das lassen, weil es eben in manchen Fällen, wie bei deinem, nicht zum gewünschten Ergebnis führt.

Außer dass ich eben weiß, dass es nicht klappt, sehe ich auch keinen Grund, die gefundene Variable $_POST[xyz] nicht wie üblich auszuwerten. Der String als Index kann ja sogar in ' ' eingeschlossen werden und es geht trotzdem nicht.

Ausnahmen, die "halt einfach nicht gehen" fand ich schon immer grottig. Eine vernünftige Erklärung, warum das nicht geht, hab ich bisher nicht gefunden.
Ich hab bei PHP manchmal das Gefühl, dass man an gewisse Sachen einfach nicht gedacht hat.

Was das jetzt mit "Variablenketten" zu tun haben soll, verstehe ich nicht.

Zitat:
Zitat von Buhmann
Deshalb Solltest du eben einfach einen String nehmen ( "..." ), dann einen . (Punkt) als Verkettungsoperator, deine Variable, wieder ein Punkt und dann der Reststring. Dann hast du solche Probleme nicht mehr.
Wenn Du generell von der Verwendung von Variablen (du hast das jetzt ja nicht auf diese tollen Strings bei assoziativen Arrays beschränkt) innherhalb von Strings abrätst, wozu sollte man dann noch " " verwenden?
Die sind dann ja vollkommen unnötigerweise langsamer als die Version mit ' '.
Der_Gerhard ist offline  
Alt 16.05.2005, 07:17  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard

Haissa, so eine Diskussion, wo doch ein einfaches RTFM reicht.
http://de3.php.net/manual/de/languag...string.parsing

Variablen in doppelten Anführungszeichen funktionieren übrigens zuverlässig, wenn man die sog. komplexe (haha) Syntax verwendet, mit den geschweiften Klammern.
__________________
mod = master of disaster
Waq 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
Externe Variable über eine Funktion ausgeben errox PHP Tipps 2008 3 14.04.2008 11:26
externe Variable im Skript ausgeben kampfnickel PHP Tipps 2007 17 29.01.2007 18:05
bei nicht vorhandener Variable fehlermeldung ausgeben !? mikeda PHP Tipps 2006 9 30.04.2006 03:20
Auswahl als Variable ausgeben / in DB speichern PHP Tipps 2006 3 14.01.2006 13:08
Smarty: Variable als Template ausgeben duderino PHP Tipps 2006 11 08.01.2006 18:43
Text so ausgeben wie in Variable Definiert imported_DJ Nuno PHP Tipps 2005-2 5 23.10.2005 19:40
Bild-Dateiname in Variable speichern und mit PHP ausgeben? nicobischof PHP Tipps 2005-2 2 28.08.2005 16:16
ausgeben einer zusammengestellten variable PHP Tipps 2005-2 3 16.08.2005 15:12
Tabellenname bei Join als Variable mit ausgeben Datenbanken 0 22.07.2005 20:56
Variable speichern und in SQL-Abfrage ausgeben PHP Tipps 2005 2 12.04.2005 11:10
[JS] Variable ausgeben HTML, Usability und Barrierefreiheit 2 18.03.2005 17:33
template in variable zum ausgeben jens76 PHP Tipps 2005 1 01.03.2005 15:00
Speicherplatzbedarf einer Variable ausgeben WarrenFaith PHP-Fortgeschrittene 13 08.02.2005 18:19
Leerzeichen (innerhalb einer Variable) ausgeben HTML, Usability und Barrierefreiheit 3 25.01.2005 15:24
[Erledigt] sourcecode parsen, nicht ausgeben aber in variable speichern PHP Tipps 2004 4 09.07.2004 19:36

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php gefundene variable ausgeben

Alle Zeitangaben in WEZ +2. Es ist jetzt 13:46 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.