Autor Zpráva
FilipP
Profil
Dobrý den mám problém. Snažím se udělat web na který se budou vkládat do mysql úrčité informace, které pak půjdou vypsat na např. na adrese: www.muj.web/php.php?id=id_pripsevku.
Jsem začátečník
struktura tabulky: sloupce: id, popis
Nevíte někdo co s tím prosímvás ??
Děkuji za odpověď.
jenikkozak
Profil
FilipP:
Jsem začátečník
Doporučuji studium. Například na Linuxsoftu mají hezký seriál.
FilipP
Profil
Děkuji za radu, ale moc čas na studium moc nemám. Potřeboval bych prostě radu nebo odkaz na nějáký návod. Studovat se, ale samozřejmě se něják snažím...
jenikkozak
Profil
FilipP:
Bude potřeba konkrétní otázka. (Ideálně s důkazem snahy.) Obecně se radit moc nedá. Ošetřuj data před vkládáním do databáze, nedávej sloupci id textový datový typ, dej pozor na adresy, aby v nich nebyly překlepy; bude-li článek s daným id chybět, můžeš vracet chybu 404...
FilipP
Profil
Zápis něják zvládnu, ale spíše jsem se chtěl zeptat jak vypsat ten článek na adrese: www.muj.web/php.php?id=id-clanku. říkal jsem si že by to šlo něják s $_POST[] NEBO $_GET[] ale netuším jak.
Rellik
Profil
koukni sem:
http://firstpage.profitux.cz/?page=uvod_sql
třeba najdeš odpověď... :)
FilipP
Profil
<?php
//načteme soubor s údaji pro připojení k db
            mysql_connect("localhost", "root", ""); // připojíme se k db
            mysql_select_db("indexinzerce"); // vybereme db 
            mysql_query("SET NAMES 'cp1250'"); // nastavíme kódování       

//***************************** mazání článků ************************************
$del = $_GET['del'];
$id = $_GET['id'];
if($del=="ok") //pokud odklepneme smazání článku
    {
        mysql_query("delete from frimy where id=".$id.""); //smažeme článek
        echo "<b>Údaj byl smazán</b>"; //a vypíšeme úspěšnost
    }

//******************* nastavení navigace a výběr dat z databáze ******************
$start = $_GET['start'];
if(!$start)
    $start=0; // pokud nebude klepnuto na další nebo předchozí příspěvek zobrazí se od posledního
    
$prispevku = "2"; // počet příspěvků které chceme vypsat na stránku

    $vypis =  mysql_query("SELECT * FROM firmy order by id desc limit ".$start.", ".$prispevku.""); //vybíráme data z "aktualit" a vypisujeme od posledního příspěvku
     $pocet=mysql_num_rows(mysql_query('select * from aktuality')); //spočítáme všechny záznamy v databázi

//******************************** navigace **************************************
     $trida="class='neakt'"; // pokud navigace << nebu mít kam navigovat vloží se do odkazu neaktivní třída
        if(($start-$prispevku)>=0) //Pokud navigace << bude mít kam pokračovat...
            $trida=' href="?start='.($start-$prispevku).'" class="akt"'; //...vloží se odkaz na předchozí stránku
            $konec=$start+$prispevku;
        if($pocet<$konec)
            $konec=$pocet;
echo '<a ' . $trida . '>&lt;&lt; </a>&nbsp;&nbsp;Články '.($start+1)." až ".$konec." z ".$pocet." &nbsp;&nbsp;"; // vypíšeme navigační odkaz << a počet článků

    $trida="class='neakt'"; // pokud navigace >> nebu mít kam navigovat vloží se do odkazu neaktivní třída
        if(($start+$prispevku)<$pocet) //Pokud navigace >> bude mít kam pokračovat...
            $trida=' href="?start=' . ($start+$prispevku) . '" class="akt"'; //...vloží se odkaz na další stránku
echo '<a ' . $trida . '> &gt;&gt;</a>'; // vypíšeme navigační odkaz >>

//********************************* výpis článků *********************************
        while($row = mysql_fetch_array($vypis))
                {
            echo "<h2>".$row["nadpis"]."</h2>\n"; //zobrazíme nadpis
            echo "<p>".$row["text"]."</p>\n"; // zobrazíme text
                //a pro pozdější editaci a nebo smazání i tyto odkazy..
            echo "<a href='edit.php?clanek=".$row["id"]."'>ZMĚNIT</a> | <a href='vypis.php?del=ok&amp;id=".$row["id"]."'>SMAZAT</a>";
            echo "<hr>";
                }
mysql_close(); //odpojíme se z db
?> 

zkusil jsem se to něják předělat pro svoje zadání. ale nemůžu přít na to proč mi to furt háže :


Notice: Undefined index: del in C:\xampp\htdocs\php-k\4.php on line 8

Notice: Undefined index: id in C:\xampp\htdocs\php-k\4.php on line 9

Notice: Undefined index: start in C:\xampp\htdocs\php-k\4.php on line 17

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\php-k\4.php on line 24
<< Články 1 až z >>
Notice: Undefined index: nadpis in C:\xampp\htdocs\php-k\4.php on line 43

Notice: Undefined index: text in C:\xampp\htdocs\php-k\4.php on line 44
ZMĚNIT | SMAZAT

zkouším to xampp kde je:
Apache 2.2.21
MySQL 5.5.16
PHP 5.3.8
shaggy
Profil
FilipP:
ale moc čas na studium moc nemám

zkusil jsem se to něják předělat pro svoje zadání. ale nemůžu přít na to proč mi to furt háže :
Ďakujeme za informáciu, ale pretože moc času na odpoveď nemám, tak ti neporadím kde je chyba.
Ako ti poradil jenikkozak, bolo by vhodné venovať čas štúdiu, potom by si tam tie chyby nemal. Alebo môžeš niekomu zaplatiť, od toho tu je sekcia Práce a zákazky.
FilipP
Profil
<?php
mysql_connect("localhost","root","");
mysql_select_db("indexinzerce");
$adresa = $_GET['adresa'];
$id=(int)$adresa; //Přetypování
if(isset($id)){ //zpracuje, pokud je vybráno ID v URL adrese
$dotaz = "SELECT id, nazev, popis, clanek FROM clanky WHERE id=" . $id . " LIMIT 1";
$sql = mysql_query($dotaz); //vybereme z databáze, s podmínkou pokud se id z databáze rovná
//id v URL a olimitujeme na jeden článek
$ok = mysql_fetch_array($sql); //naplníme pole článkem
if($ok['nazev']){ //pokud je pole naplňeno dostaneme výsledek kterž zpracujeme
echo "Název: " . $ok['nazev'] . "<br>" .
"Popis: " . $ok['popis'] . "<br>" .
"Článek: " . $ok['clanek'];
}
else{
echo "Takový článek neexistuje!"; //pokud pole není naplněno vypíšeme text o neexistenci
//článku
}
}
else{
echo "Pokus o narušení bezpečnosti!";//pokud přijde někdo na tuto stránku bez ?clanek= pokouší
//se někdo zlobit
}
?>
Znovu jsem něco našel myslím že toto je jednoduší, ale furt mi to vyhazuje:
Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\indexinzerce\admin\1.php on line 20

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