Autor Zpráva
deliQus
Profil
Zdravím, udělal jsem si úplně obyčejné přidávání článku, jen nadpis a text pod sebe, a zajímá mě pomocí čeho se udělá aby se zobrazila jen ta na kterou se klikne: Třeba www.neco.cz/index.php?page=clanky&id=5 , nějak takhle bych si představoval odkaz, kde se po kliknutí objeví jen clanek s id=5, ale nevm jak to realizovat, jestli mám udělat další script, ten si vytahne z DB id atd, a na základě toho to vypíše ? a jak ? poraďte prosím :-)
denCo
Profil
<?php
if( isset( $_GET['page'] ) && isset( $_GET['id'] ) ) {
//vypíšeš novinku s ID = $_GET['id']
} else {
//vypíšeš všetky novinky
}
?>

samozrejme si to ešte ošetri
deliQus
Profil
Když mám tento skript na výpis:

<h1>Uvod</h1>
<?
  $vysledek=mysql_query("select nadpis, text from uvod",$GLOBALS["link"]);
  if (mysql_num_rows($vysledek)==0)
    echo "Uvod nevyplnen";
  else
  {
    echo "<TABLE>";
    while ($zaznam=MySQL_Fetch_Array($vysledek)):
      ?>
      <TR>
        <TD><h3><?echo $zaznam["nadpis"]?></h3></TD>
      </TR>
	   <TR>
        <TD><?echo $zaznam["text"]?></TD>
      </TR>
      <?
    endwhile;
    echo "</TABLE>";
  }
?>

tak jak by to tedy vypadalo, jsem začátečník, takže se radši zeptám, než abych to zkoušel celý den plácat do sebe. :)
denCo
Profil
nikdy nepoužívaj premenne $GLOBALS, nieje to veľmi bezpečné
<?php
if( isset( $_GET['page'] ) && isset( $_GET['id'] )  &&  $_GET['page'] =="clanky") {
$vysledek=mysql_query("select nadpis, text from uvod WHERE id=" . $_GET['id'] . "LIMIT 1",$GLOBALS["link"]);
  if (mysql_num_rows($vysledek)==0)
    echo "Uvod nevyplnen";
  else
  {
    echo "<TABLE>";
    while ($zaznam=MySQL_Fetch_Array($vysledek)):
      ?>
      <TR>
        <TD><h3><?echo $zaznam["nadpis"]?></h3></TD>
      </TR>
       <TR>
        <TD><?echo $zaznam["text"]?></TD>
      </TR>
      <?
    endwhile;
    echo "</TABLE>";
  }
} else {
$vysledek=mysql_query("select nadpis, text from uvod",$GLOBALS["link"]);
  if (mysql_num_rows($vysledek)==0)
    echo "Uvod nevyplnen";
  else
  {
    echo "<TABLE>";
    while ($zaznam=MySQL_Fetch_Array($vysledek)):
      ?>
      <TR>
        <TD><h3><?echo $zaznam["nadpis"]?></h3></TD>
      </TR>
       <TR>
        <TD><?echo $zaznam["text"]?></TD>
      </TR>
      <?
    endwhile;
    echo "</TABLE>";
  }
}
?>


ešte ošetrenie premenných, ale to si nájdi už sám
deliQus
Profil
Díky moc :)
deliQus
Profil
Doplňuji jen pro ty, kteří by toto chtěli použít pro svůj účel.

Místo :

$vysledek=mysql_query("select nadpis, text from uvod WHERE id=" . $_GET['id'] . "LIMIT 1",$GLOBALS["link"]); 


Sem musel dát:

$vysledek=mysql_query("select nadpis, text from uvod WHERE id='".$_GET['id']."'LIMIT 1",$GLOBALS["link"]);


Každopádně díky :-)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0