Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> zmiana adresu linku
bok
post
Post #1





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 8.05.2005

Ostrzeżenie: (0%)
-----


Witam
Mam taki mały problem jak można zrobić coś takiego:
W pliku „lista.php” mam takie coś:

  1. <?
  2. $cos1 = 'http://www.wp.pl';
  3. $cos2 = 'http://www.onet.pl';
  4. $cos3 = 'http://www.google.pl';
  5. ?>


A w pliku “lista2.php” mam takie coś:

  1. <? include(lista.php'); ?>
  2. <p><a href="open.php?id=<? print($cos1); ?>">jakis napis 1</a></p>
  3. <p><a href="open.php?id=<? print($cos2); ?>">jakis napis 2</a></p>
  4. <p><a href="open.php?id=<? print($cos3); ?>">jakis napis 3</a></p>


A w pliku “open.php” mam takie coś:

  1. <form method="POST" action="<? print($id) ?>">
  2. <p><input type="submit" value="Prześlij" name="B1"><input type="reset" value="Resetuj" name="B2"></p></form>


A problem mój polega na tym że jak ktoś uruchomi link np. „jakis napis 1” na stronie “lista2.php” to wyświetli mu się adres strony: „open.php?id=http://www.wp.pl”, a jak można by to przerobić tak aby wyświetlał mu się adres np.: „open.php?id=cos1”. Jak można przerobić to tak aby powodował to samo ale żeby wyświetlał krótszy link i zeby niewyswietlalo tych adresow stron (http://www.wp.pl, itd..).
Czy istnieje w ogóle taka możliwość, lub czy znacie inne podobne sposoby.
Dzięki z góry.

Ten post edytował bok 19.08.2005, 14:04:41
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




temat zamykam. Proszę sformuŁować najpierw odpowiedni temat do treści (Regulamin, podpunkt b).
Zrozumcie, że dobry temat ułatwi i wam i nam życie. łatwiej go np. później znaleźć, czy też ludzie poważniej podchodzą do sprawy gdy i ich się poważnie traktuje (poprzez solidnie przedstawienie sprawy, co dotyczy również tematu).
Pozatym w wyszukiwarce można przeszukiwać wg. tematu, a nic nie znaczący temat nie pozwoli na jego określenie w kryteriach wyszukiwania.
Jak temat zostanie poprawiony, proszę przesłać mi PW (Prywatną Wiadomość) - odblokuję.

edit. otwieram - obieacno poprawę biggrin.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
tiraeth
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Proponuję aby adresy były w pliku tekstowym:
Kod
http://www.onet.pl
http://www.wp.pl
http://www.interia.pl


lista2.php
  1. <?php
  2. $adresy = file('lista.txt');
  3. foreach($adresy as $id => $url) # <----- LITEROWKA
  4. {
  5.  $id++;
  6.  echo '<p><a href="open.php?id='.$id.'">jakis napis</a></p>';
  7. }
  8. ?>


open.php
  1. <?php
  2. $id = $_GET['id']; $id--;
  3. $adresy = file('lista.txt');
  4. header("Location: ".$adresy[$id]);
  5. ?>

I już mamy gotowe przekierowanie smile.gif
Go to the top of the page
+Quote Post
bok
post
Post #4





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 8.05.2005

Ostrzeżenie: (0%)
-----


Niebardzo tak moze byc ponieważ w pliku "lista.php" jest tego ponad 500 ja podalem lekko zmodyfikowany kod.
Go to the top of the page
+Quote Post
nospor
post
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




I co z tego że 500? W czym to przeszkadza?

@tiraeth A czemu zmniejszaj id po odebraniu go z url? Przecież do url zapodajesz id indexowane od 0, więc nie trzeba zmniejszać


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
tiraeth
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


w kodzie wyraźnie napisałem pod instrukcją foreach $id++ smile.gif

ajajja, nie zauważyłem. To powiedz mi jeszcze a pokiego gdzyba to dodałeś?
---
nospor
Go to the top of the page
+Quote Post
bok
post
Post #7





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 8.05.2005

Ostrzeżenie: (0%)
-----


Lepiej by było jak by był link np: open.php?id=cos1

a nie open.php?id=1

poniewarz ta nazwa "cos1" bylaby wykozystywana w jeszcze jedny skrypcie, a jak bym wstawił nowy link w tym pliku lista.php to by sie troche tam pomieszalo.

Może ktoś wie jak to zrobic??

Ten post edytował bok 20.08.2005, 04:31:28
Go to the top of the page
+Quote Post
tiraeth
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


@nospor: użyłem tego, aby każdy ID odpowiadał odpowiedniej linijce w pliku tekstowym. Oczywiście obie operacje (inkrementacji i dekrementacji) można usunąć z kodu smile.gif

@bok: z nazwą zmiennej przesyłanej przez parametr id nie będzie problemu, gorzej w wyświetleniem (dynamicznym) wszystkich linków...
  1. <?php
  2. # jako $_GET['id'] przesylamy nazwe zmiennej
  3. include('lista.php'); # pobieramy adresy (Twój kod)
  4. header("Location: ".${$_GET['id']}); # ten kod przekieruje na adres zawarty w odpowiedniej zmiennej
  5. ?>
Go to the top of the page
+Quote Post
sniper1993
post
Post #9





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 8.08.2005
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


Coś żeś chyba przekombinował biggrin.gif


--------------------
Zapraszam na forum o tematyce PHP .http://forum-php.xt.pl
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 00:38