Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][SQL], Wynik SELECT jako link
convicted
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 28.04.2009

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


Mam taki problem. Wypisuję sobie z bazy nazwe serwisu, a po kliknieciu na nia, ktora jest linkiem, ma mi otworzyć nową stronę (postem zapamietuje wybrany id) ze szczególami serwisu. CZY POTRZEBNA JEST ODDZIELNA STRONA DLA KAZDEGO ZAPYTANIA CZY STARCZY JEDNA PHP, W KTOREJ POST'em BEDA UZUPEŁNIANE WARTOŚCI? Nie wiem jak to ugryźć. (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif)

Kod
while ($wiersz = mysql_fetch_assoc($idzapytania)){
?>
      
<table border = "0" height = "84" width = "603" ><tr style="background: url(/images/ramka.jpg)"><td valign = "top">
<?
       echo( " ".$wiersz["id"].". ");
       echo "<u> ";

       echo( " ".$wiersz["nazwa"].", "); --> to powinno byc linkiem i odniesc do jakies strony php
       echo "</u> ";

        echo( " ".$wiersz["city"].", ");
        echo( " ul. ".$wiersz["adres"]." ");
        echo "
  ";
        echo "
  ";
        
          
?>

(..)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
korkie
post
Post #2





Grupa: Zarejestrowani
Postów: 48
Pomógł: 9
Dołączył: 7.03.2009
Skąd: Łódź

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


Nie potrzebna jest osobna strona:

<?php

echo '<form action="" method="post" >';
echo '<input type="submit" name="register" value=" '.$nazwa_serwisu.' ">';
echo '</form>';

if ( isset($_POST['register']) && $_POST['register'] == $nazwa_serwisu) #zastępuje link
{
echo 'Informacje o serwisie ' . $nazwa_serwisu; #itd.
}

?>

Nie wiem, czy dobrze rozumiem o co ci chodzi, ale otwieranie nowych stron nie jest koniecznością.
W przypadku dużej ilości danych tworzyłbyś masę dodatkowych stron w projekcie.
Jednak zbudowanie skryptu opierającego się na interaktywnym wyświetlaniu informacji na jednej i tej samej
stronie może być pracochłonne.
Omijając tutaj Ajaxa i inne technologie można zrobić jeszcze coś takiego:

$zmienna - tablica zawierająca dane o serwisach.

<?php
foreach ($zmienna as $x)
{
echo '<a href="'.adres_obecnej_strony.'?sprawdz=' .$x .'"> Serwis '. $x. '</a>';
}

$sprawdz = $_GET['sprawdz'];

switch ($sprawdz)
{
case 1: echo 'Informacje o serwisie jeden...';
}
?>

Widziałem kiedyś prostą gierkę napisaną w php opierającą się na podobnych metodach.
Przy odrobinie cierpliwości można wszystko zrobić na jednej stronie.

Ten post edytował korkie 5.05.2009, 11:36:57
Go to the top of the page
+Quote Post
convicted
post
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 28.04.2009

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


Ale to co mi napisałeś korkie to dalej button. A ja chce link od nazwy.
W której zmiennej przechowuje się wtedy wybrany $wiersz["nazwa"] (tj. nazwa serwisu o okreslonym id) ?

Wolałbym oczywiście bez tworzenia oddzielnych stron, aby w kolejnej stronie target.php były wszystkie rekordy z bazy przyporzadkowane do sciagnetej nazwy lub id serwisu (POST'em). Chciałem, zeby schemat był podobny jak na stronie otomoto http://otomoto.pl/index.php?sect=search&am...&order_by=i tzn mam krotkie informacje o danym samochodzie a jak klikne na nazwe zeby wlaczala sie strona ze szczegółami.
Go to the top of the page
+Quote Post
korkie
post
Post #4





Grupa: Zarejestrowani
Postów: 48
Pomógł: 9
Dołączył: 7.03.2009
Skąd: Łódź

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


Witam ponownie.

" Ale to co mi napisałeś korkie to dalej button. A ja chce link od nazwy. "


Nie wiem dokładnie co rozumiesz poprzez "link od nazwy".
Trudno mi coś konkretnie powiedzieć na podstawie krótkiego opisania problemu.
Jeśli chcesz mieć nazwę w postaci linka, lub chcesz klikać na nazwę i jednocześnie uzyskać
przeniesienie do konkretnego pliku (lub wczytanie go) można też pokombinować tak:

<?php

$wszystkie_strony = array();

while ($wiersz = mysql_fetch_assoc($idzapytania))
{

# echo( " ".$wiersz['nazwa'].", "); --> to powinno byc linkiem i odniesc do jakies strony php

$wszystkie_strony[] = $wiersz['nazwa']; # Tablica $wszystkie_strony zapisze wszystkie wpisy z danej kolumny z bazy

echo '<a href=" '.zmienna_zawierająca_url_obecnej_strony. '?wybierz='.$wiersz["nazwa"].' ">'.$wiersz["nazwa"].'</a>';
# Wyświetlamy wszystkie nazwy w postaci linków
}

$wybierz = $_GET['wybierz']; # Po kliknięciu linka strona otrzyma zmienną mówiącą nam, który link został kliknięty

foreach ($wszystkie_strony as $x)
{
if ( $x == $wybierz)
{
include_once("$wybierz"); # ewentualnie include_once("$wybierz".".php");
}
# W zależności od klikniętego linka wczyta się konkretna strona, lub plik z informacjami, lub co tam potrzeba.
}

?>

PS nie sprawdzałem literówek w tym skrypcie, pisałem go "na kolanie" ale może ci się przyda jako jakaś wskazówka.

Ten post edytował korkie 5.05.2009, 14:46:32
Go to the top of the page
+Quote Post
convicted
post
Post #5





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 28.04.2009

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


O to chodziło! Dziękuję!
Go to the top of the page
+Quote Post
korkie
post
Post #6





Grupa: Zarejestrowani
Postów: 48
Pomógł: 9
Dołączył: 7.03.2009
Skąd: Łódź

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


Cieszę się, że mogłem pomóc.
pozdrawiam
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 24.08.2025 - 14:40