php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.10.2006, 20:21  
Erfahrener Benutzer
 
Registriert seit: 16.02.2006
Beiträge: 303
tinchen
Standard Teil der URL ersetzen

Hallo ihr,

nehmen wir mal an, ein Link sieht so aus.
Code:
http://www.domain.de/index.php?option=content&task=view&id=2
Ich möchte mir diesen Link mit
PHP-Code:
$_SERVER['REQUEST_URI'
holen [macht das Sinn? Alternativen?], um
dann in dieser var der URL id=2 mit id=5 zu ersetzen?

Oder wie macht man das richtig?
Hatte auch schon daran gedacht mir die einzelnen Teile per GET zu holen,
aber die vars wie option oder task sind nicht immer so enthalten, es gibt beispielsweise auch action und andere.

Gruß
Tine
tinchen ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 18.10.2006, 20:46  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

das ist wahrscheinlich geschmackssache. allerdings mußt du mit REQUEST_URI ja str_replace oder besser preg_replace benutzen und dabei aufpassen, daß du nicht aus versehen xid=2 statt id=2 ersetzt, also am besten mit regExp vorn auf & oder ? und hinten auf & oder Zeilenende prüfen...
mit $_GET ersetzen und alles wieder zusammenbasteln bist du wahrsch. schneller...
nikosch ist offline  
Alt 18.10.2006, 21:21  
Erfahrener Benutzer
 
Registriert seit: 16.02.2006
Beiträge: 303
tinchen
Standard

Das mit preg_replace gefällt mir, allerdings sind reguläre Ausdrücke nicht wirklich meine Stärke. Kann mir das jemand erklären wie man so etwas macht?

Im Sinne von: Suche nach &id=int als regulärer Ausdruck?

Grüße
Tine
tinchen ist offline  
Alt 19.10.2006, 00:01  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

schade, ich dachte du versuchst es erstmal selbst. naja hier ist der code:

PHP-Code:
<?
$sKey 
'id';
$sNewVal 5;
echo 
preg_replace ('#([\?&]' $sKey '=).*?(&|$)#' '${1}' $sNewVal '$2' $sURI);
?>
ist jetzt allgemein für id = ANY. für ausschließlich INT kannst du statt .*? einfach [0-9]*? einsetzen.
nikosch ist offline  
Alt 19.10.2006, 00:31  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Liegt der Link als String oder als tatsächlicher Aufruf vor?
Zergling-new ist offline  
Alt 19.10.2006, 00:52  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

letzteres wie ich verstanden habe. und dann so als string: $_SERVER['REQUEST_URI']
nikosch ist offline  
Alt 19.10.2006, 11:01  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Ach, jetzt hab ichs verstanden:
PHP-Code:
<?php
$aGET 
$_GET// $_GET should be readonly
$aGET['id'] = 5;
?>
Mit PHP5 kannst du dir den Array jetzt wieder parametrisiert mit http_build_query() zusammenbauen, oder du benutzt eine Schleife (PHP4).
Zergling-new ist offline  
Alt 19.10.2006, 16:33  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

ups, hatte vergessen Daß auf das $1 ja ein INT folgt. hab den code oben mal angepaßt ( ${1} )...
wow, was für eine mächtige funktion http_build_query(). nicht schlecht.
nikosch 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
JavaScript/PHP: qooxdoo 0.7.1 - Teil 1 : Eine Einführung Zergling-new Tutorials 6 25.01.2008 10:41
Spezielle aus Text nehmen, ersetzen und Teil aus dem Text... BartTheDevil89 PHP Tipps 2008 11 09.10.2007 15:31
Teil einer Variablen mit einer Variablen ersetzen ? simsalabim PHP Tipps 2007 11 20.03.2007 20:36
String durchsuchen und ersetzen unabhängig von Groß / KLein PHP Tipps 2006 2 09.07.2006 23:29
String ersetzen Benshee PHP Tipps 2006 4 02.04.2006 21:43
Problem mit der preg_replace - Ersetzen einer Zeichenkette reimondo PHP Tipps 2006 10 07.02.2006 22:36
PHP-GTK Tutorial Beitragsarchiv 9 02.11.2005 21:07
nur bestimmten teil von php anzeigen se-clan PHP Tipps 2007 6 31.10.2005 20:52
Anführungszeichen ersetzen PHP Tipps 2005-2 6 28.09.2005 20:39
unbekannten teilstring mit anfang/end-markierung ersetzen janni PHP Tipps 2005 14 29.04.2005 14:53
teil eines strings ausschneiden janni PHP Tipps 2007 6 03.01.2005 14:21
regulärer Ausdruck zum dynamischen ersetzen in einem templat robo47 PHP Tipps 2004 3 02.11.2004 08:25
makierten teil herausfinden Filewalker PHP Tipps 2004 5 18.10.2004 22:28
[Erledigt] includ. Text ersetzen ohne vars PHP Tipps 2004 3 13.09.2004 23:16
Reguläre Ausdrücke beim suchen und ersetzen Off-Topic Diskussionen 5 05.07.2004 15:35

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
url id ersetzen, url ersetzen javascript, url teil ersetzen, javascript url austauschen, php bereich aus url ersetzen, javascript url ersetzen, teil einer url ersetzen, url ersetzen, teil der url ersetzen, ersetzen ein teil der url, javascript link teile ersetzen, url austauschen php, url nehmen und ersetzen, teil der url ersetzen php, teil einer url ersetzen und ausgeben php, php teil in url ersetzen, javascript teile einer url ersetzen, regulärer ausdruck teil von url ersetzen, teil einer uri ersetzen, teile der url ersetzen

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