Autor Zpráva
casy
Profil *
Ahoj,

potřeboval bych poradit ohledně výpisu novinku. Pro výpis používám tento zdroj

<?php

require "inc/db.php";   
$vysledek = mysql_query( "SELECT * FROM `clanky` WHERE id = 5", $spojeni);

while ($zaznam = mysql_fetch_array($vysledek) ): 

echo "<h1>";
echo $zaznam["nadpis"];
echo "</h1>";
echo "</b><br /><br />";
echo $zaznam["clanek"];
echo "<br/>";
echo "</p>";
endwhile;

?>


ze scriptu je patrné že používám pro každou novinku stránku, kterou musím vytvořit, proto id=5.

Volám si id z databáze a vepisuju ho do url novinky.

echo "<p style='text-align: right;'><a href='index.php?p=news_";
echo $zaznam["id"];
echo "'>";
echo "Více...</a></p>";


Nemůžu vyřešit jakým způsobem mám volat id jako novou stánku abych nemusel stránky vytvářet sám, nezahlcoval server a nedělal to vlastně úplně zbytečně.

Děkuji za radu

Dan
WMPopi
Profil
nevím jestli jsem dobře pochopil, už přetahuju :-) stránky vytvářet nemusíš, v tvým případě stačí použít:

echo "<a href='index.php?id=4'>předchozí</a>";
echo "<a href='index.php?id=6'>následující</a>";


a dotaz pak takhle

WHERE id = '$_GET[id]'
Lamicz
Profil
WMPopi:
Ale ale, bacha na SQL injection (a to nepocitam, ze to id neni konstanta, ale klic v asoc. poli):

"SELECT * FROM `clanky` WHERE id = ".intval($_GET['id']), $spojeni
WMPopi
Profil
Lamicz:
a víš že jsem čekal že to někdo vytáhne? :-D ale myslím si, že vzhledem k jeho dotazu je od věcí jako sql injection ještě docela daleko ;-) jinak samozřejmě souhlas...
casy
Profil *
:) jo sql injection ma jeste cas, ale urcite tuto hrozbu nepodcenuji. stačí když vstupní pole použiji jako proměnou a odešlu jako addslashes ?
Nox
Profil
http://phpfashion.com/escapovani-definitivni-prirucka
casy
Profil *
Neměl by někdo chuť mě učit PHP ? Jsem z Prahy a jsem schopný za lekce platit. Klidně na smlouvu, potřebuju do toho proniknout a řekl bych že když neumím tyto zakldní funkce tak nemohu pokračovat. Třeba jak funguje proměná $_GET a proč mi to vypisuje chybu že index id je neznámý i když dotaz je napsaný správně respektive samotná databáze nevypisuje žádnou chybu. Taky bych se chtěl naučit sql injection jak zabezpečit vstupní pole a hlavně základy těch funkcí, stránkování, abych nemusel k novinkám dělat 100 stran, ale vypisovaly se z databáze atd, jestli máte zájem mě vzdělávat tak budu moc rád :)
jj
Profil *
nejdřív si najdi nějaký tutoriál na netu, např. tento Odkaz.
jsou tam pěkně vysvětlené základy, syntaxe phpka, cykly, podmínky, atd...
domlouvat si někoho na "učení phpka" bych odložil až jako poslední možnost, pokud tomu stále nebudeš rozumět ... na netu se válí spousty materiálu o programování v php, chce to jen hledat a mít chuť si to přečíst.
casy
Profil *
myslíš že není lepší u toho sedět s někým kdo tomu rozumí a hned mi dokáže vše vysvětlit ?
casy
Profil *
dělal jsem ten tutoriál na linuxsoftu a nějak jsem to nerozchodil, něco mi tam unikalo
casy
Profil *
neporadil by mi někdo ještě s uploadem obrázků na server do určité složky nebo jinak používám tento script


<FORM ACTION="add_news.php" METHOD="post" ENCTYPE="multipart/form-data">
<INPUT TYPE="file" NAME="soubor" SIZE="40">
<INPUT TYPE="submit" NAME="ok" VALUE="Upload">
</FORM>
<?php
$soubor_name = ($_FILES["soubor"]["name"]);
$soubor = ($_FILES["soubor"]["tmp_name"]);
$ok = ($_POST["ok"]);

if ($ok == "Upload" && $soubor_name!="")
{
    if (move_uploaded_file($soubor, "./$soubor_name"))
        {
        chmod ("./$soubor_name", 0646);
        echo "<b>Soubor $soubor_name byl nahran na server</b><BR>";
        }
    else
        {
        echo "<b>Chyba - soubor nebyl nahran</b><BR>";
        }
}
?>



Obrázek se mi uploaduje do kořenového adresáže, já potřebuji tyto soubory uložit do složky media na serveru, mám povolené práva na 777.

Děkuji
jj
Profil *
přepiš cestu, kam se má soubor uložit ..
casy
Profil *
právě nevím co přesně, zkoušel jsem zaměnit tmp_name za /media a nic, opravdu nevím
jsim
Profil
 move_uploaded_file($soubor, "./$soubor_name")


druhý parametr je cílová složka, kam se přesune uploadnutý soubor, změň ji na cestu, kterou potřebuješ
casy
Profil *
Warning: move_uploaded_file(./media) [function.move-uploaded-file]: failed to open stream: Is a directory in /web/htdocs/wellness_saloncz/www/web/admin/add_news.php on line 49

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpHy6krd' to './media' in /web/htdocs/wellness_saloncz/www/web/admin/add_news.php on line 49
Chyba - soubor nebyl nahran

49 řádek
    if (move_uploaded_file($soubor, "./media"))


$soubor_name je proměnná -
 $soubor_name = ($_FILES["soubor"]["name"]);

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