» Poradna » Programy

Zapis do databaze

Odpovědět  |  Zobrazit bez stromu  |  Upozornit redakci  |  nových odpovědí: 2/2
 |   |   |  [83.208.118.---]

Jsem zacatecnik a chtel bych poradit jak rozchodit tuto knihu navstev. Vytvorim si databazi i tabulku v ni, ale kdyz vyplnim udaje na strance "kniha.php" a odeslu nezobrazi se zadna chyba, ale zadny vzkaz se na sranku neprida. (Kdyz vyplnim databazi rucne v PHP MyAdmin, tak se obsah zobrazi) Dík za radu.


//pripojení k MySQL serveru

$spojeni = MySQL_Connect("localhost", "jmeno", "heslo");


//jestliže se nepodarí pripojit vypíše se hlášení a ukoncí se běh scriptu

if (!$spojeni) {
echo "Nepodařilo se připojit k MySQL serveru.";
exit;
}

//nastavení aktuální databáze

$vybrana = MySQL_Select_DB("nazev_db");

//jestliže se nepodarí nastavit vypíše se hlášení a ukoncí se beh scriptu

if (!$vybrana) {
echo "Nepodařilo se nastavit databázi jako aktivní.";
exit;
}

if ($pridat == "ok") {

//z tabulky kniha se vybere sloupec ID a seradí se sestupne podle velikosti ID

$vysledek = MySQL_Query("SELECT ID FROM `kniha` ORDER BY ID DESC");
if (!$vysledek) {
echo "Došlo k chybě při zpracování dotazu v databázi.
\n";
exit;
}

//data vybraná pomocí predešlého príkazu se uloží do asociativního pole

$zaznam = MySQL_Fetch_Array($vysledek);

$ID = $zaznam["ID"];
if ($ID == "") {
$ID = 0;
}
++$ID;

//aktuální datum se uloží do proměné

$datum = Date("j.m. Y");

$beztext = "";

//tento cyklus zkontroluje zda text obsahuje mezery
//jestliže nenalezne mezeru v úseku 20 znaku tak ji vloží sám
//zabezpecíme tak roztahování stránky textem bez mezer

for ($a = 0; ;$a = $a + 20) {
$pomtext = "";
for ($i = $a; $i < ($a + 20); ++$i) {
if ($i > StrLen($vzkaz)) {
break 2;
}
$pomtext .= $vzkaz[$i];
}
if (StrPos($pomtext, " ")) {
$beztext .= $pomtext;
}
else {
$beztext .= $pomtext." ";
}
}

if (StrPos($pomtext, " ")) {
$beztext .= $pomtext;
}
else {
$beztext .= $pomtext." ";
}

$vzkaz = $beztext;

//do tabulky kniha uložíme jednotlivé záznamy, které obsahuje vzkaz a datum přidání vzkazu

$vysledek = MySQL_Query("INSERT INTO `kniha` VALUES (".$ID.", '".HTMLSpecialChars($prezdivka)."', '".HTMLSpecialChars($email)."', '".HTMLSpecialChars($URL)."', '".$datum."', '".text($vzkaz)."')");
if (!$vysledek) {
echo "Došlo k chybě při zpracování dotazu v databázi.
\n";
exit;
}

}

?>

Odpovědi na otázku

 |   | 

Zkus za příkaz INSERT nechat vypsat hlášku o chybě, jestli tam nějaká je...

$vysledek = MySQL_Query("INSERT INTO `kniha` VALUES (".$ID.", '".HTMLSpecialChars($prezdivka)."', '".HTMLSpecialChars($email)."', '".HTMLSpecialChars($URL)."', '".$datum."', '".text($vzkaz)."')") or die(mysql_error());

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |   |  [83.208.118.---]

Chybu to nehlásí....

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Exit, Echo, Jednotlivé záznamy, Break



Určitě si přečtěte


Genetika a příjmení: Unikátní možnost získat test Y-DNA zdarma a dozvědět se o svých předcích

Genetika a příjmení: Unikátní možnost získat test Y-DNA zdarma a dozvědět se o svých předcích

** Projekt Genetika a příjmení hledá shody mezi osobami se stejným příjmením ** Využívá k tomu testování DNA na chromozomu Y ** Výsledky testu můžete účastí v projektu získat zdarma

11.  1.  2018 | Marek Lutonský | 3

Pojďme programovat elektroniku: Z čeho poskládat venkovní meteosondu, která poběží celé roky

Pojďme programovat elektroniku: Z čeho poskládat venkovní meteosondu, která poběží celé roky

** Dnes si ukážeme, z čeho postavit venkovní meteosondu ** Tak, aby fungovala celé roky ** A posílala data třeba pomocí Wi-Fi

14.  1.  2018 | Jakub Čížek | 19


Aktuální číslo časopisu Computer

Zachraňte nefunkční Windows

Jak nakupovat a prodávat kryptoměny

Otestovali jsme konvertibilní notebooky

Velký test 14 herních myší