php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 03.06.2005, 09:40  
Gast
 
Beiträge: n/a
Standard Wie kürzere Variablen-Übergabe auf eine andere Seite machen?

Guten Morgen zusammen

Von einer Tabelle aus sollen diverse Werte auf eine Formularseite übergeben werden. Das klappt, aber nur wenn man den IE benutzt. Wie kann ich die Übergabe kürzen? Ich nicht genau, wie ich das anstellen soll.

So sieht der Code auf der Tabellenseite aus:
PHP-Code:
<?php
                
echo "<a href=\"stuff.dir/bearbeiten.php?fldID=",$row3["fldID"],"&",
                
"fldtag=",$row3["fldtag"],"&",
                
"fldmonat=",$row3["fldmonat"],"&",
                
"fldjahr=",$row3["fldjahr"],"&",
                
"fldTitle=",$row3["fldTitle"],"&",
                
"fldText=",$row3["fldText"],"&",
                
"fldPriority=",$row3["fldPriority"],"&",
                
"fldStatus=",$row3["fldStatus"],"&","\">";
?>
So sieht im IE die Übergabe-URL aus:
bearbeiten.php?fldID=333&fldtag=21&fldmonat=1&fldj ahr=2005&fldTitle=hallo&fldText=test%20test%20test %20test%20test&fldPriority=mittel&fldStatus=offen&

Das ist natürlich viel zu lange. Zu lange URLs bringen einige Nachteile mit sich. Und ausserdem lassen sich die Werte dann einfach manipulieren. Im Mozilla Firefox funktioniert das gar nicht. Und auf dem Mac würde es mit den Umlauten auch nicht gehen. Deshalb ist eine kürzere URL gefragt. Dazu verwendet man idealerweise eine Funktion, oder?

Die Funktion mysql-fetch-assoc sollte hier IMO weiterhelfen. Aber man scheint nur puren MySQL-Code (Abfragen) reinpacken zu können, soweit ich das sehe.
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 03.06.2005, 09:42  
Erfahrener Benutzer
 
Registriert seit: 25.02.2004
Beiträge: 1.524
Orolhawion
Standard

wenn du den ganzen kram einfach in der session speicherst sieht man gar nich was übergeben wird.. vielleicht hilft dir das..
im formular steht dann halt bei value nicht $_GET['bla'] sondern $_SESSION['bla']
__________________
"die Mitte des Textes kann ja theor. mitten in einem Text liegen"

http://www.jagr.de/
Orolhawion ist offline  
Alt 03.06.2005, 09:47  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

sollte es ein formular zum eintragen von daten sein, warum dann nicht POST anstatt GET ? geht es über mehrere Seiten, wie orol schon erwähnt hat -> SESSIONS
robo47 ist offline  
Alt 03.06.2005, 09:55  
Gast
 
Beiträge: n/a
Standard

Nee, es ist quasi der umgekehrte Weg. Ich muss zuerst Daten von einer Tabelle auslesen und sie dann auf der Formularseite einfügen (damit die Daten dann entweder aktualisiert (UPDATE) oder gelöscht (DELETE) werden können). Auf der bearbeiten.php-Seite verwende ich ja POST. Es geht nicht über mehrere Seiten, sondern über zwei Seiten.
 
Alt 03.06.2005, 10:03  
Erfahrener Benutzer
 
Registriert seit: 25.02.2004
Beiträge: 1.524
Orolhawion
Standard

also du holst daten aus der datenbank, die schon eingetragen wurden und möchtest sie einfach nur ändern/löschen?
das is ja einfach.. aber wieso gehts dann über 2 seiten? erklär mal ein bisschen mehr bitte..
__________________
"die Mitte des Textes kann ja theor. mitten in einem Text liegen"

http://www.jagr.de/
Orolhawion ist offline  
Alt 03.06.2005, 10:15  
Gast
 
Beiträge: n/a
Standard

Halt, halt... ändern und löschen geht ohne Probleme. Das funktioniert schon.

Ich habe eine Seite namens index.php:
Dort ist die Tabelle (mit den Datensätzen)

Ich habe auch eine Seite namens bearbeiten.php
Dorthin werden dann die Datensätze übertragen (ohne Probleme). Die Datensätze KANN man ändern oder löschen. Das funktioniert.
Mich stört es, WIE die Daten übertragen werden, nämlich so:
bearbeiten.php?fldID=333&fldtag=21&fldmonat=1&fldj ahr=2005
&fldTitle=hallo&fldText=test%20test%20test%20test% 20test
&fldPriority=mittel&fldStatus=offen&
(alles auf einer Zeile natürlich)

das ist nicht gut, weil:
1. zu lange und zu unschön(irgendwo gibts ne Grenze, IMO bei 3000 Zeichen)
2. manipulierbar
3. funktioniert nicht mit dem Firefox.

Es geht mir um die Art der Übertragung der Daten. Gibts keine elegantere Lösung? Ach ja, das mit den beiden php-Seiten wird und muss so bleiben, da ich die Ein- und Ausgabe strikt trenne und zwei leichter verwaltbare Quellcodes da sind, statt einen unübersichtlichen Quellcode.

Mit Sessions und Cookies habe ich keine Erfahrung. Gibt es nur die Möglichkeit, Sessions zu benutzen, wenn man ne kürzere URL will? Oder gehts mit mysql_fetch_assoc() irgendwie?
 
Alt 03.06.2005, 10:22  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

ich hab da so nen verdacht :P
http://faq-phpfriend.de/q/q-stil-normalform.html

und solche daten übergibt man nciht im link weiter, zu fehleranfällig, die ID reicht, weil die Daten ja in der DB stehen
robo47 ist offline  
Alt 03.06.2005, 10:24  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Zitat:
3. funktioniert nicht mit dem Firefox.
??? sicher? beweise ? :P
robo47 ist offline  
Alt 03.06.2005, 10:58  
Erfahrener Benutzer
 
Registriert seit: 25.02.2004
Beiträge: 1.524
Orolhawion
Standard

ich würd einfach nich die daten übergeben sondern nur die ID des artikels aus der datenbank, wenn dann die bearbeiten.php aufgerufen wird, holst du die sachen einfach anhand der ID aus der datenbank raus und schreibst sie in die values der textfelder..
__________________
"die Mitte des Textes kann ja theor. mitten in einem Text liegen"

http://www.jagr.de/
Orolhawion ist offline  
Alt 03.06.2005, 11:12  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Schweizer
Gibts keine elegantere Lösung?
Doch.

Zitat:
Zitat von Schweizer
1. zu lange und zu unschön
Das haben GET-Übergaben so an sich. Lösung: POST

Zitat:
Zitat von Schweizer
2. manipulierbar
Das haben GET-Übergaben so an sich. Lösung: POST

Zitat:
Zitat von Schweizer
3. funktioniert nicht mit dem Firefox.
Das wäre schlimm, wenn das wahr wäre!

Zitat:
Zitat von Schweizer
Gibts keine elegantere Lösung?
Ja. POST.

Zitat:
Zitat von Schweizer
Mit Sessions und Cookies habe ich keine Erfahrung.
... und das wird ewig so bleiben, wenn Du diese Erfahrung nicht sammelst. Es lohnt sich! Und gehört zu den Grundlagen.

Zitat:
Zitat von Schweizer
Oder gehts mit mysql_fetch_assoc() irgendwie?
Ungefähr genausogut, wie wenn du versuchen würdest ein Schaf mit einer Kuh zu kreuzen um einen Hund als Welpen zu bekommen. *fg*
 
 


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
[SESSION] Variablen "verschwinden" Hu5eL PHP Tipps 2008 7 26.06.2008 13:07
Bei richtiger Eingabe Daten an nächste Seite versenden xx_heidi_xx PHP Tipps 2008 49 27.05.2008 14:56
[Erledigt] Deutsche Anwender automatisch auf eine andere Seite umleiten PHP Tipps 2007 12 19.11.2005 13:41
wenn cookie nicht da ist dann eine andere seite laden PHP Tipps 2007 9 14.11.2005 11:59
Variablen auf der Seite zusammenzählen? PHP Tipps 2004 3 26.08.2004 13:20
functionen in ein andere seite einbinden... imported_DJ Nuno PHP Tipps 2004 10 18.08.2004 11:59
Zugriff vom Popup auf andere Seite Neo2k3 PHP Tipps 2004 2 05.08.2004 20:51
Variablen per adresse übergeben rocco PHP Tipps 2004 7 24.07.2004 12:03
Werte auf andere Seite übergeben themonk PHP Tipps 2004 2 29.06.2004 21:04
Variablen zwischen Frames übergeben PHP Tipps 2004 4 29.06.2004 12:41
[Erledigt] PHP Eine neue PHP seite automatisch öffnen PHP Tipps 2004 1 19.06.2004 12:40
Sessionvariable auf andere Seite aufrufen PHP Tipps 2004 2 18.06.2004 21:33
[Erledigt] Automatisch zu einer andere Seite wechseln PHP Tipps 2004 8 17.06.2004 15:15
Variable über eine Seite an andere übergeben? PHP Tipps 2004 12 10.06.2004 11:00
Weiterleiten auf eine andere Seite suendesizer PHP Tipps 2004 5 04.06.2004 09:51

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
kürzere url, variablen von andere seite ändern, variablenübergabe andere seite, refresh formular automatische Übergabe von variablen, php übergabe von variablen in andere seiten, übertragen der daten auf ein andere phpseite, variablen auf andere php seite senden, session auf andere seiten übergeben, php mehrere variablen an andere seite übergeben, formular variablen über mehrere seiten übergeben, session auf andere seiten übertragen?, übergabe von daten eines php seite an eine andere php seite, variablenübergabe kürzen php

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