Dotaz od úplného začátečníka

9 příspěvků

Archiv diskusního fóra

Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.

  1. Jakým způsobem můžu přidat záznam do tabulky v databázy? Například z nějakého formuláře? Mohl by mi někdo uvést nějaký příklad? Díky moc
  2. Tak teda dobře. Dejme tomu, že budeš mít knihu návštěv. V PHPmyAdminu si vytvoříš tabulku: create table vzkazy ( id int (5) auto_increment, jmeno varchar (20), email varchar (30), vzkaz text, datum varchar (10), primary key (id)); Na jedné stránce budeš mít formulář. Stránka se bude jmenovat dejme tomu - kniha.php - <form action=vzkazy.php method=get> <table cellpadding=2> <tr> <td align=right>Jméno: <td><input type=text name=jmeno size=15> <tr> <td align=right>Email: <td><input type=text name=email size=15> <tr> <td align=right valign=top>Zpráva: <td><textarea name=vzkaz rows=10 cols=2></textarea> <tr> <td> <td><input type=submit name=odeslat value=Odeslat> </td></tr></table> </form> A teď příjde na řadu soubor vzkazy.php <? //Připojení k databázi mysql_connect("mysql.webzdarma.cz","uživatel","heslo"); mysql_select_db("název databáze"); //jméno uživatele //Vložení příspěvku do databáze if(IsSet($odeslat): $datum = Date("j."."m."."Y"); mysql_query("insert into vzkazy values ('$id' , '$jmeno' , '$email' , '$vzkaz', '$datum')"); //Vybrání všech příspěvků z databáze, seřazených sestupně podle data přidání. $result = mysql_query("select * from vzkazy order by id desc"); $pocet = mysql_num_rows($result); ?> <h1>Kniha návštěv</h1> <p>Počet záznamů: <? echo $pocet ?></p> <? //Načtení všech příspěvků do asociativního pole $while($row = mysql_fetch_array($result): $id = $row["id"]; $jmeno = $row["jmeno"]; $email = $row["email"]; $vzkaz = $row["vzkaz"]; $datum = $row["datum"]; echo "<p>Jméno: ".$jmeno."<br>Email: <a href=\"mailto:".$email."\">".$email."</a><br>Vzkaz: ".$vzkaz."<br>Datum: ".$datum."<hr>; endwhile; endif; //Konec připojení z databází mysql_close(); ?> Tak tohle je základní způsob jak vkládat data do databáze a zpětně si je prohlížet. Data je možný ještě ošetřit mnoha funkcemi v PHP. Za případné chyby se omlouvám. Petr
  3. Sorry tenhle řádek nebude takhle: $while($row = mysql_fetch_array($result): ale takhle: $while($row = mysql_fetch_array($result)): Petr
  4. A ještě jednou já: příkaz endif; dej hned za: //Vložení příspěvku do databáze if(IsSet($odeslat): $datum = Date("j."."m."."Y"); mysql_query("insert into vzkazy values ('$id' , '$jmeno' , '$email' , '$vzkaz', '$datum')"); //Vybrání všech příspěvků z databáze, seřazených sestupně podle data přidání. $result = mysql_query("select * from vzkazy order by id desc"); $pocet = mysql_num_rows($result); endif; Protože jinak při vstupu na stránku vzkazy.php, by se ti nic nezobzrazilo. Petr
  5. Někde mám chybu. <? //Připojení k databázi mysql_connect("mysql.webzdarma.cz","uživatel","heslo"); mysql_select_db("databaze"); //jméno u?ivatele //Vlo?ení příspěvku do databáze if(IsSet($odeslat)): $datum = Date("j."."m."."Y"); mysql_query("insert into vzkazy values ('$id' , '$jmeno' , '$email' , '$vzkaz', '$datum')"); //Vybrání v?ech příspěvků z databáze, seřazených sestupně podle data přidání. $result = mysql_query("select * from vzkazy order by id desc"); $pocet = mysql_num_rows($result); endif; ?> <h1>Kniha náv?těv</h1> <p>Počet záznamů: <? echo $pocet ?></p> <? $while($row = mysql_fetch_array($result)): $id = $row["id"]; $jmeno = $row["jmeno"]; $email = $row["email"]; $vzkaz = $row["vzkaz"]; $datum = $row["datum"]; echo "<p>Jméno: ".$jmeno."<br>Email: <a href=\"mailto:".$email."\">".$email."</a><br>Vzkaz: ".$vzkaz."<br>Datum: ".$datum."<hr>; endwhile; endif; mysql_close(); ?> Nejdřív vykazoval chybu v "if(IsSet($odeslat):", Tak jsem přidal závorku."if(IsSet($odeslat)):" Nevím jestli je to dobře! Po tomto zákroku objevil dále chybu v "$while($row = mysql_fetch_array($result)):" Nevím co s tím,nic tam nevidim! Díky
  6. ... pred while dolar nepatri ... ... podminku 'if (isset ($odeslat))' bych pouzil jen na INSERT .. potom bych ji ukoncil a vypsat vzkazy bych nechal vzdycky ... ... a to cely dal do jednej stranky - neco jako guestbook ...
  7. Správně, omlouvám se, těch dolarů jsem tam dal moc a i tam kam vůbec nepatřej. Správně tedy ještě jednou: while($row = mysql_fetch_array($result)): Moc se omlouvám - while je cyklus a ne proměnná ! Petr
  8. Tak jsem postupoval přesně podle návodu i se všemi opravami, ale ke kladnému výsledku to stejně nevedlo :((. Stále mě to hází stejnou chybu: Parse error: parse error in /3w/webzdarma.cz/w/warapeidza/vzkazy.php on line 8 znamená to, že mám chybu na osmém řádku v vzkazy.php? uživatel i heslo je zadaný správně, jsem z toho už zoufalý, please help... <? mysql_connect("mysql.webzdarma.cz","uzivatel","heslo"); mysql_select_db("vzkazy"); //jméno u?ivatele if(IsSet($odeslat)): $datum = Date("j."."m."."Y"); mysql_query("insert into vzkazy values ('$id' , '$jmeno' , '$email' , '$vzkaz', '$datum')"); $result = mysql_query("select * from vzkazy order by id desc"); $pocet = mysql_num_rows($result); endif; ?> <h1>Kniha náv?těv</h1> <p>Počet záznamů: <? echo $pocet ?></p> <? while($row = mysql_fetch_array($result)): $id = $row["id"]; $jmeno = $row["jmeno"]; $email = $row["email"]; $vzkaz = $row["vzkaz"]; $datum = $row["datum"]; echo "<p>Jméno: ".$jmeno."<br>Email: <a href=\"mailto:".$email."\">".$email."</a><br>Vzkaz: ".$vzkaz."<br>Datum: ".$datum."<hr>; endwhile; endif; mysql_close(); ?> u knihy mi to pak píše toto: Warning: mysql_connect(): Access denied for user: 'nobody@localhost' (Using password: NO) in /3w/webzdarma.cz/w/warapeidza/kniha.php on line 5 Nepoda?ilo se p?ipojit k MySQL servru.
  9. ach jo..

← Zpět na všechna témata