Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][SQL]
Forum PHP.pl > Forum > Przedszkole
convicted
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źć. 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 "
  ";
        
          
?>

(..)
korkie
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.
convicted
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.
korkie
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.
convicted
O to chodziło! Dziękuję!
korkie
Cieszę się, że mogłem pomóc.
pozdrawiam
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.