Autor Zpráva
lenkasui
Profil
Dalsi orisek z knizky: Zkopirovala jsem tento kod a nefunguje mi:

Mam okno rozdelene na dve okynka: prave a leve

V leve mam tento kod, ktery mi vypise tyto kategorie clanku:
moda
sport
zdravi


<HTML>
<HEAD>
<TITLE>Publikační portál</TITLE>
</HEAD>
<BODY>
<BASE target="Pravy">
<?php
require_once('databaze.inc');
do
{
// Připojení k databázi.
if (!OtevriDB()) break;

@$výsledek = mysql_query("SELECT * FROM rubriky");

while($záznam = mysql_fetch_array($výsledek))
{
echo"<A href="portal2.php?IR="";
echo $záznam["id_rubriky"];
echo ">";
echo $záznam["rubrika"]."</A></BR />";
}
mysql_close();
} while (false);
?>
</BODY>
</HTML>



pak mam kliknout treba na sport a vpravem okne se mi ma otevrit seznam clanku, ktere patri jen do teto rubriky.
V te knize pisou, ze kod je stejny, jako tento nasledujici, ktery prikladam a ktery vypise vsechny clanky.

Na to, aby vybral jen clanky z kategorie , je treba ho upravit tak, ze v klauzuli WHERE uvedeme číslo rubriky.
A jak program pozna cislo rubriky - podle kliknuti na rubriku? A jak to prosim mam tedy napsat, aby se pomoci tohoto kodu zobrazily jen clanky z rubriky na kterou kliknu:
Prosim o radu, moc a moc


<html>
<head>
<title>Publikační portál</title>
</head>
<body>
<h1 style="color: blue">Internetový časopis</h1>
<?php
require_once('databaze.inc');

do
{
// Připojení k databázi.
if (!OtevriDB()) break;

$dnes = Date ("YmdHis");

@$výsledek = mysql_query(
"
SELECT clanky.id_clanku, autori.jmeno, autori.email,
cesta,clanky.rubrika, rubriky.rubrika, clanky.nazev,
uvodnik, pristupy, UNIX_TIMESTAMP(datum) as datumcas
FROM clanky, autori, rubriky, pocitadlo
WHERE clanky.autor = autori.id_autora AND
clanky.id_clanku = pocitadlo.id_clanku AND
clanky.rubrika = rubriky.id_rubriky AND
clanky.autor = autori.id_autora AND
clanky.datum <= $dnes
ORDER BY datum DESC;

") or die("chyba");

while($záznam=mysql_Fetch_array($výsledek))
{
$datum = strftime("%d %m %Y", $záznam["datumcas"]);
$data = "<p><b> ";
$data .= $datum;
$data .= "</b> - <a href="mailto:". $záznam["email"]
. ""><b>". $záznam["jmeno"]. "</b></a> - ";
$data .= $záznam["rubrika"]." ";
$data .= "<a href=""."/PHPkniha". $záznam["cesta"]
. "clanek.php?ID=". $záznam["id_clanku"]. "">";
$data .= "<b>". $záznam["nazev"]."</b></a> (". $záznam["pristupy"]
. ")<br> ";
$data .= $záznam["uvodnik"]." ";
echo $data;
}
mysql_close();
} while (false);
?>
</body>
</html>



dekuji
lenkasui
Profil
Oba kody jsou plne funkcni, jen si nedokazu pomoct sama v tom, aby se zobrazily clanky jen z kategorie
lenkasui
Profil
pomozte prosim,zkousim jen slepe menit podminky u where ale bez vysledku
lenkasui
Profil
Mam okno rozdelene na dve okynka: prave a leve

V leve mam tento kod, ktery mi vypise tyto kategorie clanku:
moda
sport
zdravi


<HTML>
<HEAD>
<TITLE>Publikační portál</TITLE>
</HEAD>
<BODY>
<BASE target="Pravy">
<?php
require_once('databaze.inc');
do
{
// Připojení k databázi.
if (!OtevriDB()) break;

@$výsledek = mysql_query("SELECT * FROM rubriky");

while($záznam = mysql_fetch_array($výsledek))
{
echo"<A href="portal2.php?IR="";
echo $záznam["id_rubriky"];
echo ">";
echo $záznam["rubrika"]."</A></BR />";
}
mysql_close();
} while (false);
?>
</BODY>
</HTML>


kliknu na nekterou z kategorii a v pravem okne se mi maji vypsat clanky prave z teto kategorie,
zde kod:
co mam prosim napsat na miste , kde jsem napsala hvezdicky ***********, aby se mi otevrela kategorie,
na kterou jsem klikla?


<html>
<head>
<title>Publikační portál</title>
</head>
<body>
<h1 style="color: blue">Internetový časopis</h1>
<?php
require_once('otevridb.inc');

do
{
// Připojení k databázi.
if (!OtevriDB()) break;

$dnes = Date ("YmdHis");


@$výsledek = mysql_query(
"
SELECT * from clanky where rubrika= ********CO MAM TADY NAPSAT?******* AND
clanky.datum <= $dnes
ORDER BY datum DESC;

") or die("chyba");

while($záznam=mysql_Fetch_array($výsledek))
{
$datum = strftime("%d %m %Y", $záznam["datumcas"]);
$data = "<p><b> ";
$data .= $datum;
$data .= "</b> - <a href="mailto:". $záznam["email"]
. ""><b>". $záznam["jmeno"]. "</b></a> - ";
$data .= $záznam["rubrika"]." ";
$data .= "<a href=""."/PHPkniha". $záznam["cesta"]
. "clanek.php?ID=". $záznam["id_clanku"]. "">";
$data .= "<b>". $záznam["nazev"]."</b></a> (". $záznam["pristupy"]
. ")<br> ";
$data .= $záznam["uvodnik"]." ";
echo $data;
}
mysql_close();
} while (false);
?>
</body>
</html>
lenkasui
Profil
kdyz na misto ************** napisu cislo kategorie, tak se mi ty clanky otevrou, ale jak udelat v programu to, ze program sam pozna, na kterou kategorii jsem klikla a podle teto kategorie na misto *********** dosadi patricne cislo, ktere otevre pouze ty dane clanky?
lenkasui
Profil
pomuzete mě někdo, prosím?
lenkasui
Profil
pomuzete mě někdo, prosím?
lenkasui
Profil
prosiiiiim
Tomáš Hanus
Profil
lenkasui
predani promene
lenkasui
Profil
predani promenne je v tom prvnim kodu ale jak tu promenou prevezmu v tom druhem kodu?
lenkasui
Profil
nemuzu na to prijit porad mi to hlasi CHYBA
lenkasui
Profil
to tady opravdu nikdo nevi?
tiso
Profil
lenkasui - vieme, ale... Ja na "prosiiiiim" nereagujem, sorry...
Mastodont
Profil
V tom prvním kódu máš

portal2.php?IR=


a za tím následuje číslo rubriky. To je tedy předáno jako $_GET["IR"] ...
lenkasui
Profil
tiso - a proč nereaguješ na prosim, udelala jsem na tom programu uz desitky pokusu a nic nez prosit mi nezbyva
lenkasui
Profil
Když tam dám:

SELECT * from clanky where rubrika= IR AND
clanky.datum <= $dnes
ORDER BY datum DESC;

tak mi to hlásí: chyba

a když tam dám


SELECT * from clanky where rubrika= $_GET["IR"] AND
clanky.datum <= $dnes
ORDER BY datum DESC;

tak mi to hlasi:
Parse error: syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:xampphtdocsPHPknihaportal2.php on line 21
tiso
Profil
lenkasui - ale zbývá - učiť sa a snažiť sa pochopiť ako to funguje. Začiatočníkov by mali učiť 2 veci:
1. vyhýbanie sa zlým návykom
2. rozpoznávať a odstraňovať chyby

k bodu 1:
-nepoužívaj diakritiku v názvoch premenných
k bodu 2:
-prečítaj si toto: http://tiso.wz.cz/articles/uvodzovky.php a potom to skús použiť
-hľadaj na internete články typu: "najčastejšie chyby v PHP", google ti pomôže

Ak to všetko urobíš, a napriek tomu to nedokážeš dať dokopy, potom ti pomôžem.
lenkasui
Profil
tiso, poraď mi prosím, alespoň kde je ta chyba, jestli v prvním nebo druhém kódu
lenkasui
Profil
Lidi ja si fakt nevim rady

tohle by melo byt v prvnim kodu podle řádu uvozovek být v pořádku:
1)
echo"<A href="portal2.php?IR="";


a tohle, kdyz misto $_GET["IR"] dam treba cislo 2, tak se mi vse spravne vypise,
kam me tedy chce program navest hlaskou

Parse error: syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:xampphtdocsPHPknihaportal2.php on line 17

coz je radek SELECT * from clanky where rubrika = $_GET["IR"] AND
z tohoto kodu:
2)
("
SELECT * from clanky where rubrika = $_GET["IR"] AND
clanky.datum <= $dnes
ORDER BY datum DESC;
") or die("chyba");

uz nad tim sedim 2 dny a nemuzu na to prijit, proc to prijimam metodou GET, kdyz jsem nejak nespecifikovala odesilani touto metodou...?
neni chyba tam?
tiso
Profil
prvy subor:
...

@$vysledek = mysql_query("SELECT * FROM rubriky");
while($zaznam = mysql_fetch_assoc($vysledek)){//pokial potrebujes len asociativne pole, tak mysql_fetch_assoc je rychlejsie
echo'<a href="portal2.php?IR='.$zaznam["id_rubriky"].'">'.$zaznam["rubrika"].'</a><br>';
}
...

druhy subor:
...

if(isset($_GET["IR"])){$idrubriky=(int)$_GET["IR"];}//treba lepsie osetrit
else{$idrubriky=1;}//pripadne nejak inak - vsetky clanky alebo co?
$vysledek = mysql_query("SELECT * from clanky where rubrika=$idrubriky AND clanky.datum <= $dnes ORDER BY datum DESC") or die("chyba");
...
lenkasui
Profil
TISO, děkuji, prvni kod funguje druhy kod vypisuje hlasku:

Parse error: syntax error, unexpected T_IF in C:xampphtdocsPHPknihaportal2.php on line 16

coz je na radek: if (isset($_GET["IR"])){$idrubriky=(int)$_GET["IR"];}

je tedy takto:

if (isset($_GET["IR"])){$idrubriky=(int)$_GET["IR"];}
//treba lepsie osetrit
else{$idrubriky=1;}//pripadne nejak inak - vsetky clanky alebo co?
$vysledek = mysql_query("SELECT * from clanky where rubrika=$idrubriky AND clanky.datum <= $dnes ORDER BY datum DESC") or
die("chyba");
Joker
Profil
druhy kod vypisuje hlasku
Chyba bude asi na řádku před tím kódem. Tj. o jeden dřív, než kde začíná ten kód napsaný tady.
lenkasui
Profil
JOKERE a TISO,děkuju vám za pomoc,bylo to ve středníku JOKERE za vyrazem @$vysledek = mysql_query;
a cely kod od TISO funguje, funguje to
dekuju mooooc

takhle to ted vypada, akorat bych to sama nedala dohromady:
$dnes = Date ("YmdHis");
@$vysledek = mysql_query;
if (isset($_GET["IR"])){$idrubriky=(int)$_GET["IR"];}
//treba lepsie osetrit
else{$idrubriky=1;}//pripadne nejak inak - vsetky clanky alebo co?
$vysledek = mysql_query("SELECT * from clanky where rubrika=$idrubriky AND clanky.datum <= $dnes ORDER BY datum DESC") or

die("chyba");


dekuju
lenkasui
Profil
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<title>Publikační portál - celý článek</title>
</head>
<body>
<h1 style="color: blue">Internetový časopis</h1>
<?php
require_once "../otevridb.inc";
do {
// Spojení s databází.
if (!OtevriDB()) break;

// Zvýšení statistik sledovanosti článku.
mysql_query("UPDATE pocitadlo SET pristupy=pristupy + 1"
. " WHERE id_clanku = {$_REQUEST['ID']}");

@$vysledek = mysql_query(
"SELECT * FROM clanky, autori, rubriky "
. "WHERE clanky.id_clanku = '{$_REQUEST[ID]}' AND "
. "clanky.autor=autori.id_autora AND "
. "clanky.rubrika=rubriky.id_rubriky");

while($zaznam=mysql_Fetch_array($vysledek))
{
$data = "<a href="mailto:". $zaznam["email"]. ""><b>"
. $zaznam["jmeno"]. "</b></a> - <b> ";
echo'<a href=PHPknihaportal2.php?IR='.$zaznam["id_rubriky"].'">'.$zaznam["ru brika"].'</a><br>';
//$data .= "<a href="". $zaznam["cesta"]. "">". $zaznam["rubrika"]. " ";
$data .= "</a><br><br>";
$data .= $zaznam["nazev"]. "</b><br /> ";
$data .= $zaznam["uvodnik"]. "<br /> ";
$data .= $zaznam["telo"]. "</p><br /> ";
$data .= "<br /><br /> ";
echo $data;
}
mysql_close();
} while (false);
?>
</body>
</html>


sama jsem pak upravila podle Vasich rad ostatni kody a uz se mi oteviraji krasne odkazy na vsech strankach, dekujiiiiii
Joker
Profil
<offtopic>
V tomhle tématu je 23 příspěvků a z toho 18 od lenkasui; není trochu přehnané "nakopnout" svůj dotaz 6x za den?
Mohli by moderátoři ty "nakopávací" příspěvky smazat?
</offtopic>
lenkasui
Profil
Chtěla jsem jen sdělit to, že pomoc opravdu potřebuji a prosím o ni, nic jiného. Pomohlo mi to a to je účel tohoto serveru, či ne? Pomoc v začátcích a děkuji, mi to pomohlo. Ty jsi mi pomohl Jokere.
Měsíček
Profil
Lenko tam jsou, ale opravdu velmi razantní velké PHP hrubky v syntaxi proč se pouštíš do tak složitého kódu ? třeba dát tohle příklad : echo("Ahoj já jsem "Lenka " "); ti už vypíše syntax error a nepustí dál, začni od začátku budeš si jistější a budeš více chápat, vážně mi věř.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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