Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mod_rewrite][.htaccess]Problem z $_GET
Forum PHP.pl > Forum > Przedszkole
marian2299
  1. <?php
  2. RewriteEngine On
  3. RewriteRule ^statystyki,(.*),(.*),(.*),(.*) /statystyki.php?nazwaradia=$1&adresip=$2port=$3&obraz=$4
  4. ?>

To jest kod .htaccess
dotychczas link był: http://testfopen.cba.pl/statystyki.php?naz...mp;obraz=obraz1
Teraz jest tak: http://testfopen.cba.pl/statystyki,nazwara...sa,obraz,obraz1
Jednak jak widać w tych linkach, z tablicą coś mi się stało takiego:
(dane pobierane z $_GET)
  1. <?php
  2. (
  3.    [nazwaradia] => nazwaradia,asdas,adresip,asd,port
  4.    [adresip] => dsaport=obraz
  5.    [obraz] => obraz1
  6. )
  7. ?>

Jak to rozwiązać ? Przy przypisaniu
$nazwaradia = $_GET['nazwaradia'];
muszę coś zmieniać, czy jak ?
Fifi209
.* - oznacza dowolną liczbę dowolnych znaków więc i przecinki.

Wszystko jest tak jak trzeba (przynajmniej według wyrażenia)

Wyrażenie powinno wyglądać tak:

Jeżeli dasz zakres [] a w nim dasz ^, oznaczać to będzie wszystkie znaki prócz przecinka, i na moje oko tak powinno być.
([^,])

(oczywiście w każdym)
marian2299
Teraz nie działa ten link:
http://testfopen.cba.pl/statystyki,nazwara...as,obraz,obraz1

Dałem: ([^,]*)
Ale tablica nadal jest zła
  1. <?php
  2. (
  3.    [nazwaradia] => nazwaradia
  4.    [adresip] => asdasport=adresip
  5.    [obraz] => asd
  6. )
  7. ?>



Kod
RewriteEngine On
RewriteRule ^statystyki,([^,]*),([^,][^=]*),([^,]*),([^,]*) /statystyki.php?nazwaradia=$1&adresip=$2port=$3&obraz=$4

Ale nic się nie zmienia ;F.
Fifi209
Skoro nie umiesz tak jak ja zrobiłem pójdź na łatwiznę.

To zrób sobie tak:
RewriteRule ^statystyki,(.*) /statystyki.php?temp=$1

i temp rozbij (explode" title="Zobacz w manualu PHP" target="_manual) po przecinkach.
marian2299
Zobaczyłem, że pominąłem "&". Teraz jest niby ok... niby:
Kod
RewriteEngine On
RewriteRule ^statystyki,([^,]*),([^,]*),([^,]*),([^,]*) /statystyki.php?nazwaradia=$1&adresip=$2&port=$3&obraz=$4


A tablica mi zwraca coś takiego:
Kod
Array
(
    [nazwaradia] => nazwaradia
    [adresip] => sdasd
    [port] => adresip
    [obraz] => dsd
)
michaJlS
Cytat(marian2299 @ 30.07.2009, 14:07:42 ) *
http://testfopen.cba.pl/statystyki,nazwara...as,obraz,obraz1

Dałem: ([^,]*)
Ale tablica nadal jest zła


bo masz tam błąd:

Kod
RewriteRule ^statystyki,([^,]*),([^,][^=]*),([^,]*),([^,]*) /statystyki.php?nazwaradia=$1&adresip=$2port=$3&obraz=$4


Dokładnie tu: &adresip=$2port zapomniałeś o "&".
marian2299
A powinna
Kod
Array
(
    [nazwaradia] => sdasd
    [adresip] => dsd
    [port] => sdad
    [obraz] => obraz2
)



Ale wiecie co ? To nawet fajniejsze! Linki są krótsze:
http://testfopen.cba.pl/statystyki,asdasd,...sd,asdas,obraz1
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.