php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 09-03-2009, 21:20
Jule
 Newbie
Links : Onlinestatus : Jule ist offline
Registriert seit: Sep 2005
Beiträge: 54
Jule ist zur Zeit noch ein unbeschriebenes Blatt
Standard Textdateien mit AS und php auslesen

Hallo,

ich habe folgendes Problem. In einer Textdatei werden mittels Variablen Werte gespeichert, die dann in Flash via AS ausgelesen werden. (&wert1=value)

Nun will ich diese Werte über eine php-Oberfäche bearbeiten. Gibt es eine Möglichkeit, wie ich das, was hinter dem "=" steht, seperat auslesen bzw. bearbeiten kann? Bisher habe ich nur die Möglichkeit des zeilenweisen Auslesens gefunden aber da wäre ja immer die Variablendeklaration für AS mit dabei ...

Ich hoffe, ich habs verständlich ausgedrückt und bin gespannt auf Eure Anregungen ...
Mit Zitat antworten
  #2 (permalink)  
Alt 09-03-2009, 21:24
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

httpquerystring
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #3 (permalink)  
Alt 09-03-2009, 21:26
Jule
 Newbie
Links : Onlinestatus : Jule ist offline
Registriert seit: Sep 2005
Beiträge: 54
Jule ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ähm ... leider hab ich bisher noch nix mit Klassen zu tun gehabt. Das geht doch auch ohne, oder? Die Fehleranfälligkeit ist in diesem Fall nicht unbedingt relevant ...
Mit Zitat antworten
  #4 (permalink)  
Alt 09-03-2009, 21:35
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

im prinzip schon. müsste sogar eine vergleichbare Funktion geben:

parse_str
parse_url
extract

Da du die Klasse aber nur (wie eine Funktion) anwenden brauchst, sollte das eigentlich auch kein Hindernis darstellen...
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #5 (permalink)  
Alt 09-03-2009, 21:44
php_fussel
 Newbie
Links : Onlinestatus : php_fussel ist offline
Registriert seit: Jan 2009
Beiträge: 120
php_fussel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hallo,

spontan fällt mir dazu erst mal preg_match_all ein (reguläre Ausdrücke). Damit kann man erst einen kompletten Satz auslesen (also Variable mit Wert), anschließend nur den Wert mit preg_replace ersetzen. Da müßtest Du Dir was basteln ... ob es hier jemand für Dich tut?

Gruß php_fussel
Mit Zitat antworten
  #6 (permalink)  
Alt 09-03-2009, 22:05
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

und warum nicht einfach die werte im array bearbeiten?
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #7 (permalink)  
Alt 09-03-2009, 22:12
Jule
 Newbie
Links : Onlinestatus : Jule ist offline
Registriert seit: Sep 2005
Beiträge: 54
Jule ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das Bearbeiten ist im Grunde genommen kein Problem weil ich die entprechende Variablenbezeichnung ja einfach vor den Wert packen kann, bevor ich das ganze in die txt-file schreibe.

Das "Problem" ist eher, wie ich eben jene Bezeichnung "wegschneide" um nur den Wert als vorgegebenen Value in einem Formularfeld einzutragen.

Ich glaube arrays sind eine möglichkeit ... ich setz mich mal ran ...
Mit Zitat antworten
  #8 (permalink)  
Alt 09-03-2009, 22:16
php_fussel
 Newbie
Links : Onlinestatus : php_fussel ist offline
Registriert seit: Jan 2009
Beiträge: 120
php_fussel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ach so, Du meinst die Variable als array-key nutzen und den Wert als dazugehörigen ... ja, Wert eben ! Und diesen könnte man dann bearbeiten/ändern ... geht auch! Dann stellt sich die Frage, wie man es anstellt, dass die Werte erst mal ins array kommen!?

Gruß php_fussel
Mit Zitat antworten
  #9 (permalink)  
Alt 09-03-2009, 22:20
Jule
 Newbie
Links : Onlinestatus : Jule ist offline
Registriert seit: Sep 2005
Beiträge: 54
Jule ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Über die fWrite? so ganz spontan jetzt ...
Mit Zitat antworten
  #10 (permalink)  
Alt 09-03-2009, 22:22
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Dann stellt sich die Frage, wie man es anstellt, dass die Werte erst mal ins array kommen!?
Fussel, lies doch einfach den Thread noch einmal von Anfang an durch. Die Lösungen stehen schon in diversen Ausführungen dort!

Zitat:
Über die fWrite?
Einlesen funktioniert über fWRITE denkbar schlecht. Das rückschreiben des Arrays nachher in die Datei kann natürlich so funktionieren.
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #11 (permalink)  
Alt 10-03-2009, 12:07
Benutzerbild von fireweasel fireweasel
 Registrierter Benutzer
Links : Onlinestatus : fireweasel ist offline
Registriert seit: Sep 2008
Ort: At home
Beiträge: 851
fireweasel wird schon bald berühmt werdenfireweasel wird schon bald berühmt werden
fireweasel eine Nachricht über AIM schicken fireweasel eine Nachricht über Yahoo! schicken
Standard

Zum Zerlegen von Query-Strings hätte ich folgende Funktion anzubieten.
Sie sieht komplizierter aus, als sie ist, weil ein paar Fehler abgefangen
und einige Sonderbedingungen beachtet werden:

PHP-Code:
function aufdroesel(
  
$input '' /// STR
) {
  
$parts preg_split('/[&;]/'$input, -1PREG_SPLIT_NO_EMPTY);
  
$data = array ();
  foreach (
$parts as $part) {
    @list (
$name$value) = preg_split('/=/'$part);
    
// note: rawurldecode() does not work; it ignores '+'-encoded spaces
    
$name_decoded urldecode($name);
    
// handle multiple entries sharing the same $name; eg: &bla=x&bla=y&bla=z
    
if (isset($data[$name_decoded])) {
      if (!
is_array($data[$name_decoded])) {
        
// convert previous entry to LIST and add actual entry
        
$data[$name_decoded] = array ($data[$name_decoded]);
      }
      
$data[$name_decoded][] = urldecode($value); // add to LIST
    
}
    else {
      
$data[$name_decoded] = urldecode($value);
    }
  } 
/// end foreach $parts
  
return $data;
}

// anwendungsbeispiel:
$query '&bla=blo&brat=wurst&bier=fass&novalue=&=noname&=';
$array aufdroesel($query);
var_dump($array); 
Im Kern wird zweimal preg_split() verwendet (prinzipiell würde es auch explode() tun): einmal, um an den '&' aufzutrennen und das zweite mal in der foreach()-Schleife, um an den '=' aufzutrennen.

Urldecode() kannst du notfalls auch weglassen, wenn du dir ganz sicher bist, dass $name und $value keine Zeichen enthalten, die Probleme machen könnten -- bspw. '&' und '=', die ja eine Sonderfunktion erfüllen.

Das Einlesen aus einer Textdatei gestaltet sich je nach deren Format:
Hast du nur eine Zeile mit so einem String, dann genügt im Notfall sowas wie
$query_string = trim(file_get_contents($datei));

Hast du mehrere solcher Strings zeilenweise hintereinander in der Datei, dann musst du die auch so einlesen. Fgets() wäre hier geeignet.
Mit Zitat antworten
  #12 (permalink)  
Alt 10-03-2009, 16:13
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von fireweasel
Zum Zerlegen von Query-Strings hätte ich folgende Funktion anzubieten.
Und die soll jetzt was genau besser können als bspw. parse_str?
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #13 (permalink)  
Alt 10-03-2009, 19:35
Benutzerbild von fireweasel fireweasel
 Registrierter Benutzer
Links : Onlinestatus : fireweasel ist offline
Registriert seit: Sep 2008
Ort: At home
Beiträge: 851
fireweasel wird schon bald berühmt werdenfireweasel wird schon bald berühmt werden
fireweasel eine Nachricht über AIM schicken fireweasel eine Nachricht über Yahoo! schicken
Standard

Zitat:
Original geschrieben von wahsaga
Und die soll jetzt was genau besser können als bspw. parse_str?
Oooch nee, nicht schon wieder:
Sie lässt '.' und ' ' in den Namen der Parameter(-Keys) unverändert, wird nicht durch magic_quotes_gpc beeinflusst und verzichtet auf die '[]'-Spielereien.

Siehe auch das PHP-Handbuch zu parse_str():

Zitat:
Note: The magic_quotes_gpc setting affects the output of this function, as parse_str() uses the same mechanism that PHP uses to populate the $_GET, $_POST, etc. variables.
Aber ich vermute mal, das wusstest du alles schon ...
Mit Zitat antworten
  #14 (permalink)  
Alt 10-03-2009, 19:38
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Schön und gut - ich meinte nur, in Bezug auf die hier konkret vorliegende Fragestellung ...
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #15 (permalink)  
Alt 10-03-2009, 19:47
Benutzerbild von fireweasel fireweasel
 Registrierter Benutzer
Links : Onlinestatus : fireweasel ist offline
Registriert seit: Sep 2008
Ort: At home
Beiträge: 851
fireweasel wird schon bald berühmt werdenfireweasel wird schon bald berühmt werden
fireweasel eine Nachricht über AIM schicken fireweasel eine Nachricht über Yahoo! schicken
Standard Re: Textdateien mit AS und php auslesen

*grml* von wegen "no need to ask questions" ...

Zitat:
Original geschrieben von Großer_Meister
Schön und gut - ich meinte nur, in Bezug auf die hier konkret vorliegende Fragestellung ...
Nun denn will ich mal versuchen, eine eventuell geeignete Vorgehensstrategie mit einfachen Worten zu skizzieren:

Zitat:
Original geschrieben von Jule (=== OP)
Hallo,

ich habe folgendes Problem. In einer Textdatei werden mittels Variablen Werte gespeichert, die dann in Flash via AS ausgelesen werden. (&wert1=value)
1.) Text-Datei einlesen ...
2.) In assoziatives Array umwandeln bspw. per aufdroesel() ...

Zitat:
Nun will ich diese Werte über eine php-Oberfäche bearbeiten. Gibt es eine Möglichkeit, wie ich das, was hinter dem "=" steht, seperat auslesen bzw. bearbeiten kann? Bisher habe ich nur die Möglichkeit des zeilenweisen Auslesens gefunden aber da wäre ja immer die Variablendeklaration für AS mit dabei ...
3.) HTML-Formular aus dem assoziativen Array basteln
4.) HTML-Formular an einen Browser schicken
...
5.) HTML-Formular im Browserfenster editieren -- zumindest assoziiere ich das mit "über eine PHP-Oberfläche bearbeiten".
...
6.) Editierte Daten wieder in die Ursprungsform (was Query-String-Ähnliches) bringen
7.) Ursprungsform wieder in Datei speichern (per fwrite()? ...)

Zitat:
Ich hoffe, ich habs verständlich ausgedrückt und bin gespannt auf Eure Anregungen ...
Ich hoffe auch, dass ich mich jetzt verständlich(er als vorher) ausgedrückt habe.

Dass wir derzeit noch die Punkte 3 bis 6 offen haben, darf mir aber keiner in die Schuhe schieben ...

Geändert von fireweasel (10-03-2009 um 19:56 Uhr)
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

HeidiSQL - kostenloses MySQL front-end Editor für Windows ansehen HeidiSQL - kostenloses MySQL front-end Editor für Windows

HeidiSQL - ist ein Windows-Editor für die bekannt open Source Datenbank mySQL

10.12.2018 Berni | Kategorie: MYSQL/ Management
piwik Open-Source Webanalyse-Software ansehen piwik Open-Source Webanalyse-Software

piwik ist eine gute Alternative zu Google Analytics. Viele Features und ein modernes Erscheinungsbild mit aussagefähigen Statistiken in Echtzeit

10.12.2018 phpler | Kategorie: PHP/ Besucherzaehler
jQuery Mobile ansehen jQuery Mobile

Touch-Optimized Web Framework für Smartphones & Tablets

09.12.2018 phpler | Kategorie: AJAX/ Framework
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:58 Uhr.