Autor Zpráva
Lurtz
Profil
Dobrý den, mám tady zdrojový kód a potřeboval bych prosím vysvětlit vyznačenou část, co dělá... Děkuji

<h1>Vložení dat do databáze</h1>
<?php
include 'server.php';

//připojení k MySQL
@mysql_connect($server, $user, $password) or die("<h2>Nelze se připojit k MySQL</h2>");
mysql_select_db($databaze) or die("<h2>Nelze se připojit k databázi $databaze</h2>");
//utf-8
mysql_query("set names 'utf8'");
  
if(isset($_POST["nazev"])) {  

  if($_POST["kategorie"]=="") {echo "<h3>Nebyla zadána kategorie</h3>\n"; }
  else if($_POST["vyrobce"]=="") {echo "<h3>Nebyl zadán výrobce</h3>\n"; }
  else if($_POST["nazev"]=="") {echo "<h3>Nebyl zadán název</h3>\n"; }
  else if($_POST["cena"]=="" || !is_numeric($_POST["cena"])) {echo "<h3>Nebyl zadána cena - celé číslo</h3>\n";}
  else {
    //uložení záznamu do tabulky
    $dotaz="insert into vyrobky (id_kategorie,id_vyrobce,nazev,cena,skladem,popis) value({$_POST["kategorie"]},{$_POST["vyrobce"]},'{$_POST["nazev"]}',{$_POST["cena"]},'".(isset($_POST["skladem"])?"1":"0")."','{$_POST["popis"]}')";
    if(mysql_query($dotaz)) {echo "<h2>Data byla vložena</h2>\n"; }
    else {echo "<h2>Data nebyla vložena</h2>\n";}
  }
}
  
  

?>

<form action="vlozeni.php" method="post" onsubmit="return kontrola()">
<label>Kategorie</label>
<select name="kategorie">
  <option value="">&nbsp;</option>
<?php
  $data=mysql_query("select * from kategorie order by kategorie");
  while($zaznam=mysql_fetch_array($data)) {
    echo "<option value='{$zaznam["id"]}'>{$zaznam["kategorie"]}</option>\n";
  }
?>
</select><br>
<label>Výrobce</label>
<select name="vyrobce">
  <option value="">&nbsp;</option>
<?php
  $data=mysql_query("select * from vyrobci order by nazev");
  while($zaznam=mysql_fetch_array($data)) {
    echo "<option value='{$zaznam["id"]}'>{$zaznam["nazev"]}</option>\n";
  }
?>
</select><br>

<label>Název výrobku</label><input type="text" name="nazev" maxlength="30"><br>
<label>Cena bez DPH</label><input type="text" name="cena"><br>
<label>Skladem</label><input type="checkbox" name="skladem"><br>
<label>Popis</label><br><textarea name="popis"></textarea><br>
<input type="submit" value="Uložit">
</form>
Alphard
Profil
Na první části asi není co vysvětlovat, vstupní proměnné se porovnávají s prázdným řetězcem (jestli jsou vyplněné), jestli neznáte podmínky, znovu si přečtěte něco o základech jazyka.
Je-li vstup vyplněný, je v druhé části opět zcela běžný insert pro vkládání dat do databáze, to jsou základy práce s MySQL. Jediná zajímavost je použití ternárního operátoru. Doplňuji, že kód není bezpečný, měl by používat mysql_real_escape_string().

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: