php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 21.01.2010, 21:44  
Neuer Benutzer
 
Registriert seit: 21.01.2010
Beiträge: 3
PHP-Kenntnisse:
Anfänger
ellielmo befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Variable aus textarea übergeben

Hallo zusammen,

bin in Sachen php noch Anfänger, meine ersten Scripte sind sicher noch zu umständlich, aber sie funktionieren.

Aber eins funktioniert leider nicht und ich beiß mir daran die Zähne aus. Das Problem ist, dass es sowohl eine html als auch eine PHP Frage ist und ich nicht genau weiß, wo es hingehört; ich poste es jetzt mal hier im PHP Forum, nicht böse sein, vielleicht kann ja einer helfen.

Zum Problem: Ich habe eine Seite (form.php), mit mehreren Eingabefeldern (z. B. Punkte, Name und Beschreibung). "Punkte" und "Name" werden per html/php so abgefragt:

PHP-Code:
<form id="formular" name="formular" method="post" action="formular.php">

<input name="punkte" type="text" id="punkte" value="<? if ($punkte == '') {echo "0";} else echo $autor?>" />

<input name="name" type="text" id="name" value="<? echo $name?>" />


Die Beschreibung ist eine "textarea" und wird so abgefragt:

<textarea name="beschreibung" id="beschreibung" cols="60" rows="10"><? echo $beschreibung ?></textarea>

</form>
Soweit, so gut.

Nun werden im zweiten script "formular.php" die Werte per $punkte=$_POST["punkte"] und $beschreibung=$_POST["beschreibung"] abgefragt und zugewiesen.

Das Formular überprüft auf gewisse Kriterien und man hat die möglichkeit per Link:

PHP-Code:
<td colspan="7" align="center" bgcolor="#5E0000" class="form_check_title">&Uuml;berpr&uuml;fe bitte Deine Eingaben. Gehe <a href=form.php?punkte=<?php echo $punkte?>&beschreibung=<?php echo $beschreibung?> >zur&uuml;ck</a> um fehlerhafte Eingaben zu korrigieren</td>
also per href= Befehl zu form.php zurückzugehen und seine Eingaben zu korrigieren, wobei die Variablen mit übergeben werden, damit man die Werte nicht nochmal eingeben muss.

Das funktioniert auch alles bis auf das textarea Feld. Hier wird immer nur das erste Wort angezeigt, der Rest fehlt. Und ich verstehe nicht, warum.

Kann mir da jemand weiterhelfen? Bin echt am verzweifeln und hab ganz Google durchsucht.

Danke schon mal,

Ellielmo
ellielmo ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 21.01.2010, 21:49  
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 992
PHP-Kenntnisse:
Fortgeschritten
Frank befindet sich auf einem aufstrebenden Ast
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard

Versuche mal urlencode zu benutzen. Außerdem fehlen dir die " bei deinem Link
PHP-Code:
<a href="form.php?punkte=<?php echo $punkte?>&beschreibung=<?php echo urlencode($beschreibung)?>">zur&uuml;ck</a>
Das Gegenstück ist entsprechend urldecode
__________________
Frank ist offline  
Alt 21.01.2010, 21:57  
Neuer Benutzer
 
Registriert seit: 21.01.2010
Beiträge: 20
PHP-Kenntnisse:
Anfänger
vitus37 befindet sich auf einem aufstrebenden Ast
Standard

Merkwürdig, dass da keine Fehlermeldung kommt. Hast du mal in den Quelltext dessen gesehn was da rauskommen soll?

Die Antwort ist einfach: Ein Semikolon vergessen.
Nach echo-Anweisungen folgt immer eines.

=>
Code:
<? echo $beschreibung; ?>
Das Semikolon hast du übrigens nicht nur bei Beschreibung vergessen, sondern auch bei Autor und Name.
Aber das wird alles schon noch.

Ansonsten gäbe es vielleicht noch eine viel einfacherer Möglichkeit die Daten im Formular bei zurück klicken zu erhalten.
Prinzip: Javascript - Browser zurück Button

Habe das irgendwo in Google mal gefunden, eine kurze Script Zeile welche einen Schritt zurück in der Brwoser Historie bewirkt.
Habe leider vergessen wie sie lautet, und bin auch kein Java Scriptler, aber das findest du bestimmt.
Die meisten Browser erhalten bei diesem Vorgang die Formulardaten.

Mehr habe ich mir an deinem Script noch nicht angesehn, bin jetzt zu müde um mehr sagen zu können, morgen werf ich nochmal n Blick drauf.

P.S. Bin auch kein großer PHP Scriptler, aber wie kann das funktionieren, das dein PHP af unbekanntze Variablen verweist und auch noch funktioniert, denn du hast nirgends etwas in ihnen abgespeichtert. Kenne ich da eine Funktion nicht oder so?

Irgendwann hast du die Kniffe raus, dann klappts, beschäftige dich nur weiterhin mit der Sprache.

Gute Nacht MfG Vitus
__________________
http://vlmedia.de
vitus37 ist offline  
Alt 21.01.2010, 22:03  
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 992
PHP-Kenntnisse:
Fortgeschritten
Frank befindet sich auf einem aufstrebenden Ast
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard

vitus37:
In diesem Fall ist das Semikolon irrelevant. Da hier der Befehl durch das Beenden des php-Parsers (?>) sowieso abgeschlossen wird. Das hat auch nichts mit dem echo-Sprachkonstrukt zu tun, sondern ist grundsätzlich so.

Zwar sieht es nicht schön aus, wenn das Semikolon fehlt, rein theoretisch kannst du aber bei allen Befehlen, die direkt vor dem Abschluss des PHP-Bereiches liegen, die Semikolons weg lassen.

Auf Grund der Tatsache, dass nur das erste Wort übertragen wird, ist das eh der falsche Ansatz, denn das schließt auf eine Misinterpretation des Querystrings hin.

Zitat:
Zitat von http://www.php.net/urlencode
Hinweis: Seien Sie vorsichtig beim Umgang mit Variablen, die HTML-Entities enthalten könnten. Angaben wie &amp, &copy und &pound werden vom Browser geparst und die eigentliche Entität wird anstelle des gewünschten Variablennamens verwendet. Dies ist eine naheliegende Schwierigkeit, über die das W3C bereits seit Jahren informiert. Die entsprechende Referenz finden Sie hier: » Performance, Implementation, and Design Notes.
PHP unterstützt den Austausch des vom W3C empfohlenen Argument-Trenners Semikolon durch einen selbstgewählten Trenner über die arg_separator-Direktive in der php.ini. Leider senden die meisten User-Agents Formulardaten nicht im standardkonformen semikolongetrennten Format. Ein möglicher Weg, mit diesem Problem umzugehen, ist die Verwendung von &amp; anstelle von & als Trennzeichen. Sie müssen dafür nicht die php.ini-Direktive arg_separator verändern. Belassen Sie sie als &, und verwenden Sie statt dessen für Ihre URLs die Funktionen htmlentities() oder htmlspecialchars().
__________________
Frank ist offline  
Alt 21.01.2010, 22:26  
Neuer Benutzer
 
Registriert seit: 21.01.2010
Beiträge: 3
PHP-Kenntnisse:
Anfänger
ellielmo befindet sich auf einem aufstrebenden Ast
Standard

Hallo zusammen,

tausend dank für die schnellen Antworten. Das mit den Semikolons (ist das die Mehrzahl???) liegt daran, dass ich teilweise den Quelltext abgetippt (weil gekürzt) habe, um Euch hier nicht vollzuspammen.

Das hier war der entscheidende Hinweis:

[quote=Frank;486110] Außerdem fehlen dir die " bei deinem Link
PHP-Code:
<a href="form.php?punkte=<?php echo $punkte?>&beschreibung=<?php echo urlencode($beschreibung)?>">zur&uuml;ck</a>
Hatte die Anführungszeichen vergessen. Jetzt geht's; allerdings gibt's ein anderes Problem:

Die Absätze sind beim erneuten Anzeigen (also nach "zurück") weg. Schreib ich also:

"Hallo Welt,

wie geht's?"

zeigt er mir beim "zurückgehen"

"Hallo Welt, wie geht's an".

Hab's auch schon mit nl2br probiert, aber da ändert sich nichts, mach ich nl2br im href, zeigt er mir in der textarea immer <br /> mit an.

Hat da noch jemand einen Tipp?

Gruß,

Ellielmo

Geändert von ellielmo (21.01.2010 um 23:07 Uhr).
ellielmo ist offline  
Alt 21.01.2010, 22:39  
Benutzer
 
Registriert seit: 14.08.2008
Beiträge: 41
PHP-Kenntnisse:
Anfänger
hummer befindet sich auf einem aufstrebenden Ast
Standard

Affenformular (Standardverfahren) - PHP.de Wiki
hummer ist offline  
Alt 21.01.2010, 23:20  
Neuer Benutzer
 
Registriert seit: 21.01.2010
Beiträge: 3
PHP-Kenntnisse:
Anfänger
ellielmo befindet sich auf einem aufstrebenden Ast
Standard

OK,

danke nochmal an alle für die tolle und schnelle Hilfe!!!

Hab's -dank urlencode - hinbekommen!!!!!!! Franks Tipp war doppeltes Gold wert.

Anführungszeichen und urlncode - und es geht!

Gruß,

Ellielmo

PS: Klasse Forum!
ellielmo 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
Variable einer Seite übergeben Sharker PHP Tipps 2009 6 30.09.2009 11:47
Variable per Session übergeben? Spricht etwas dagegen? Lapje PHP Tipps 2008 6 20.10.2008 21:49
Variable übergeben mit Register Globals off trunky PHP Tipps 2008 32 08.07.2008 20:30
[Erledigt] Variable wird nicht übergeben Thorsten PHP Tipps 2008 8 24.05.2008 11:57
variable übergeben philips PHP Tipps 2006 6 08.01.2006 18:36
[Erledigt] variable ohne form mit submit übergeben PHP Tipps 2005-2 6 06.09.2005 20:34
[Erledigt] Fehlermeldung unterdrücken wenn keine variable übergeben... PHP Tipps 2005 6 20.03.2005 13:36
Variable für SQL-Statement wird nicht übergeben PHP Tipps 2005 7 03.02.2005 14:28
Warum wird Variable nicht übergeben??? Anuschka PHP Tipps 2005 2 06.01.2005 13:22
Variable in Textarea eintragen Beatbox PHP Tipps 2004-2 1 28.11.2004 19:36
Variable nach $myrow[''] übergeben PHP Tipps 2004 2 20.10.2004 17:56
variable an andere php datei übergeben PHP Tipps 2004 18 19.09.2004 10:09
Variable übergeben me PHP Tipps 2004 14 31.08.2004 18:17
[Erledigt] Variable in URL übergeben, ohne dass man sie sieht? PHP Tipps 2004 4 17.07.2004 10:21
variable per link übergeben PHP Tipps 2004 22 25.06.2004 12:01

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
textarea php übergeben, htf.formtext lines, php übergabe textarea variable, aeria punkte mit script, textarea werte übergeben, textarea html formular an seite übergeben, textarea übergeben, link auf textarea mit id, variable in textarea, variable wird gekürzt php, textarea übertragen, textarea mit post übergeben, textarea in variable, variablen vor senden formatieren, formular php werte erhalten, wert aus textbox in php skript übergeben, textaera word finden und in variable übergeben javascript, javascript atextaresinhalt an php übergeben, php textfeld an variable übergeben, php formular gibt nur ein wort von variable

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