php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.01.2009, 19:27  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.072
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

Entweder ist heute nicht mein Tag oder ich bin zu blöd mein Problem zu beschreiben.

Der String steht zu einer Kategorie in der DB drin in einen Feld Namens Pfad.

Ich nehme jetzt ein anderes Beispiel. Es geht hierbei um das ändern solcher Pfade. Ich habe also eine Kategorie Jacken.

So der Pfad dazu sieht dann so aus.

Textilien/Jacken/Replay

So nun will ich den Wert Jacken in dem Pfadstring ändern,das heist ich muss den ja erst mak raus Filtern um den zu ändern. Da kommr ich grad nicht richtig weiter.

Also will ich aus Jacken dann Kragen-Jacken machen und beim Update soll der Pfadstring dann so wieder in die DB ins Pfadfeld geschrieben werden.

Textilien/Kragen-Jacken/Replay

Mit einem einfachen str_replace geht das doch nicht oder?
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 07.01.2009, 19:38  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Zitat:
Mit einem einfachen str_replace geht das doch nicht oder?
klar geht das.
Ok, Du hast anscheinend ein Problem damit, dass ich $in im Beispiel fest gesetzt habe (Im SQL Beispiel habe ich das übrigens nicht getan. Da steht nur feld und es werden alle Datensätze der Tabelle bearbeitet).

PHP-Code:
<?php
function foo($x) {
  return 
str_replace('Jacken''Kragen-Jacken'$x);
}


foreach( array(
  
'Textilien/Jacken/Replay'
  
'Jacken/Textilien/Replay'
  
'Textilien/Replay/Jacken',
  
'Textilien-Jacken/Replay'
  
) as $in
) {
  echo 
foo($in), "<br />\n";
}
Zitat:
Textilien/Kragen-Jacken/Replay<br />
Kragen-Jacken/Textilien/Replay<br />
Textilien/Replay/Kragen-Jacken<br />
Textilien-Kragen-Jacken/Replay<br />
Ist die letzte Zeile mit Textilien-Kragen-Jacken/Replay das, was Dir Probleme bereitet?
David ist offline  
Alt 07.01.2009, 20:19  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.072
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

Es sind wahrscheinlich wirklich die festen Werte die mir Verständnisprobleme machen.

Wert der aus der DB kommt.

PHP-Code:
$pfad $cat['pfad']; 
Enthält den String Textilien/Jacken/Replay

So der Wert Kragen Jacken kommt dann aus einem Postfeld.

PHP-Code:
$_POST['m_name']; 
Nun will ich eben den Jacken mit Kragen-Jacken ersetzen und den Strin dann so wieder in die DB schreiben.

Textilien/Kragen-Jacken/Replay

Ich henge da irgendwie fest.
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Alt 07.01.2009, 20:29  
Moderator
 
Registriert seit: 06.06.2008
Beiträge: 4.849
PHP-Kenntnisse:
Fortgeschritten
Wolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer Anblick
Wolla eine Nachricht über ICQ schicken
Standard

PHP-Code:

$alt 
'Jacken';
$neu 'Kragen-Jacken';

$sql "SELECT id,pfad FROM tabelle";
$erg mysql_query($sql);
while (
$row mysql_fetch_assoc($erg)) {
  
$pfad str_replace($alt,$neu,$row['pfad']);
  
$upd "UPDATE tabelle SET pfad = '" $pfad "' WHERE id = " $row['id'];
  
mysql_query($upd);

__________________
Warum denkt mein Hund eigentlich immer dann, wenn es an der Tür klingelt, es sei für ihn?
Wolla ist offline  
Alt 07.01.2009, 20:39  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Zitat:
Zitat von litterauspirna Beitrag anzeigen
So der Wert Kragen Jacken kommt dann aus einem Postfeld.
Hast Du nicht zwei Felder $_POST['alt']=='Jacken', $_POST['neu']=='Kragen-Jacken' ?
David ist offline  
Alt 07.01.2009, 20:42  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.256
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Wieso wird der Pfad eigentlich nicht aus einer Kategoriestruktur generiert?
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
Alt 07.01.2009, 22:29  
Erfahrener Benutzer
 
Registriert seit: 19.03.2007
Beiträge: 176
BlackWolf ist zur Zeit noch ein unbeschriebenes Blatt
Standard

wieso sollte das nicht über str_replace() gehen?
solange du irgendwas durch irgendwas anderes ersetzen willst geht str_replace(). was du ersetzt, woher es kommt oder wohin es geht interessiert die funktion nicht.
du hast in deinem fall drei variablen:
$fromDB - die alte kategorie aus der datenbank (kommt von mysql_fetch_****)
$zuErsetzen - das was es zu ersetzen gilt (kommt von $_POST)
$ersatz - das mit dem du es ersetzen willst (kommt auch von $_POST)

und nu

str_replace($zuErsetzen,$ersatz,$fromDB);

fertig aus. danach wieder zurück in die datenbank damit (UPDATE ....), gut ist es

mfg
BlackWolf ist offline  
Alt 08.01.2009, 11:45  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.072
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

Ich war gestern etwas schwer vom Begriff,warum auch immer.

Danke an alle Helfer mittlerweile habe ich es hinbekommen und grad die letzten Posts gelesen. Nun muss ich es nur noch schaffen das wenn eine Kategoriename geändert wird,dieser dann in jedem Datensatz geändert wird wo er vor kommt. Ich denke das werde ich so machen das ich alle Datensätze auslese in ein schreibe und dann das Update mit in einer foreach Schleife mache wo alle datensätzte erstzt werden die den Namen des alten Kategorienamen enthalten und mit dem neuen ersetzt werden.

Wenn das dann alles hinhaut,markiere ich den Thread als erledigt.
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Alt 08.01.2009, 12:50  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.072
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

So der erste Schrit istt vollbracht es werden alle Datensätze geändert und ersetzt.

Nun muss ich es nur noch schaffen wenn ein Menupunkt verschoben wird das der entsprechende Pfad angepasste wird.

Das heist ich habe momentan diesen String.

Tutorials/Design/Fireworks

Nun will ich den Menupunkt Fireworks direkt in Tutorials stecken und da soll dann praktisch der String danach so aussehen.

Tutorials/Fireworks.

Da weis ich noch nicht so recht wie ich das anstelle.

Wenn da jemand noch ein paar Tipps hat,dann nehme ich die gern an.
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Alt 08.01.2009, 12:52  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.256
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Zitat:
Wenn da jemand noch ein paar Tipps hat,dann nehme ich die gern an.
Zitat:
Wieso wird der Pfad eigentlich nicht aus einer Kategoriestruktur generiert?
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
 


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
PHP5 SOAP - Problem mit Arrays Calexico PHP-Fortgeschrittene 0 11.09.2008 12:06
Update / syntaxfehler prinzli Datenbanken 7 24.11.2007 21:24
Event abfangen Ambience JavaScript, Ajax und mehr 4 30.08.2007 14:36
String auslesen Shaira PHP Tipps 2006 11 01.12.2006 17:52
UPDATE count nach Link Aufruf ? PHP Tipps 2006 9 22.01.2006 14:53
Alle Felder nach String durchsuchen Jacks Rache Datenbanken 6 08.08.2005 09:46
String in allen Spalten suchen Jacks Rache Datenbanken 0 05.08.2005 09:43
Alle Spalten nach String durchsuchen Jacks Rache Datenbanken 0 05.08.2005 09:41
string -> int, nur wenn string zahl ist PHP Tipps 2005-2 3 06.06.2005 12:33
where string von einer funktion zu anderen transportieren PHP Tipps 2005 5 03.03.2005 16:29
php code als string umwandeln PHP Tipps 2005 8 23.02.2005 18:03
String auf bestimmte Breite (Pixel) kuerzen... mudo PHP-Fortgeschrittene 25 28.01.2005 19:07
String suchen und tauschen PHP Tipps 2005 13 08.01.2005 22:00
Update per Cronjob (where Feld = Wort) Apfeltyp PHP Tipps 2004-2 3 14.12.2004 18:25
String mit Leerzeichen auffüllen HTML, Usability und Barrierefreiheit 2 27.10.2004 18:47

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
string durchsuchen pfad ändern php, php string suchen aber ganze zeichenkette ersetzen

Alle Zeitangaben in WEZ +1. Es ist jetzt 22:33 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