Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 5. diel - Asociatívne polia v PHP a obsluha formulárov

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
Maroš Motaj
Člen
Avatar
Odpovedá na Jan Lupčík
Maroš Motaj:13.2.2018 11:22

Ahojte, ďakujem už to nevypisuje chybu, ale keď stlačím súčet tak formulár vypíše:

Web localhost neodeslal žádná data.
ERR_EMPTY_RESPONSE

a druhá stránka kde má byť súčet je prázdna... :/

neviem či tomu správne chápem, ale mal by som mať dve stránky spustené? jedna je s formulárom a druhá je tá, kde vypíše výsledok?

Ďakujem,

Avatar
Jan Lupčík
Tvůrce
Avatar
Odpovedá na Maroš Motaj
Jan Lupčík:13.2.2018 17:03

Ahoj, můžeš prosím poskytnout kód té stránky, kde je chyba? Takhle opravdu netuším, kde by mohla být chyba. :)

Odpovedať
TruckersMP vývojář
Avatar
Maroš Motaj
Člen
Avatar
Maroš Motaj:14.2.2018 8:57

Ahoj :)

Posielam:

PHP:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Kalkulac­ka</title>
</head>
<body>
<?php
if (isset($_POST["cis­lo1"]) && isset($_POST["cis­lo1"]) && isset($_POST["cis­lo1"])){
$a = $_POST['cislo1'];
$b = $_POST['cislo2'];
$operace = $_POST['operacia'];

if ($operace == 'scitanie')
$vysledok = $a + $b;
else if ($operacia == 'odcitanie')
$vysledok = $a - $b;
else if ($operacia == 'nasobenie')
$vysledok = $a * $b;
else if ($operacia == 'delenie')
{
if ($b != 0)
$vysledok = $a / $b;
else
$vysledok = 'Chyba';
}
echo("vysledok: $vysledok");
}
HTML:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Kalkulac­ka</title>
</head>
<body>
<p>Vítejte v kalkulacke.</p>

<form method="POST" action="index.php">
<input name="cislo1" type="text" /><br />
<input name="cislo2" type="text" /><br />
<input type="submit" value="Spocitaj" />
</form>

</body>
</html>

myslím si, že HTML nepošle na správne miesto zadané čísla... oba kódy majú názov index.php a index.html(volajú sa index aj keď ich ukladám pod názvom kalkulacka). Index.php mám uložený na C:\users.... a index.html mám uložený v dropboxe... ako ich mám prepojiť? musia byť uložené spolu na jednom mieste?

Ďakujem,

Avatar
Jan Štrobl
Člen
Avatar
Odpovedá na Maroš Motaj
Jan Štrobl:14.2.2018 10:22

Ahoj, co takhle si do podmínky dát jenom čísla která tam opravdu máš? :D Tudíž si toto

if (isset($_POST["cislo1"]) && isset($_POST["cislo1"]) && isset($_POST["cislo1"])){

oprav na

if (isset($_POST["cislo1"]) && isset($_POST["cislo2"]))){
Avatar
Maroš Motaj
Člen
Avatar
Odpovedá na Jan Štrobl
Maroš Motaj:14.2.2018 10:33

Už som to opravil. :) ďakujem,

Ale aj tak:

Umiestnil som kalkulacka.html a vypocet.php do jednej zložky na disku. Spustím formulár zadám čísla dám sčítať, nasleduje prázdna stránka bez informácií... následne spustím vypocet.php a zas len prázdna web stránka....

ďakujem,

HTML:
<p>Vitajte v kalkulačke, zadajte 2 čísla a operáciu.</p>

<form method="POST" action="vypocet­.php">
<input name="cislo1" type="text" /><br />
<input name="cislo2" type="text" /><br />
Operacia:
<select name="operacia">
<option value="scitani­e">Sčítanie</op­tion>
<option value="odcita­nie">Odčítáni­e</option>
<option value="nasobe­nie">Násobeni­e</option>
<option value="deleni­e">Dělenie</op­tion>
</select><br />
<input type="submit" value="Vypočítaj" />

PHP:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>vypocet</ti­tle>
</head>
<?php
if (isset($_POST["cis­lo1"]) && isset($_POST["cis­lo2"])){
$a = $_POST['cislo1'];
$b = $_POST['cislo2'];
$operacia = $_POST['operacia'];

if ($operacia == 'scitanie')
$vysledok = $a + $b;
else if ($operacia == 'odcitanie')
$vysledok = $a - $b;
else if ($operacia == 'nasobenie')
$vysledok = $a * $b;
else if ($operacia == 'delenie')
{
if ($b != 0)
$vysledok = $a / $b;
else
$vysledok = 'Chyba';
}
echo("vysledok: $vysledok");

Avatar
Jan Štrobl
Člen
Avatar
Odpovedá na Maroš Motaj
Jan Štrobl:14.2.2018 10:36

Teď koukám.. ty tam toho máš mnohem víc..otevři si svůj soubor.. vedle si otevři nový a nahraj tam tento kod, který funguje a podle něj si to oprav a přemýšlej jak a proč si tam měl chybu.

<?php
if (isset($_POST["cislo1"]) && isset($_POST["cislo2"])){
$a = $_POST['cislo1'];
$b = $_POST['cislo2'];
$operacia = $_POST['operacia'];

if ($operacia == 'scitanie') {
$vysledok = $a + $b;
}else if ($operacia == 'odcitanie'){
$vysledok = $a - $b;
}else if ($operacia == 'nasobenie'){
$vysledok = $a * $b;
}else if ($operacia == 'delenie'){
if ($b != 0)
$vysledok = $a / $b;
}else
$vysledok = 'Chyba';
}
echo("vysledok: $vysledok");

?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Kalkulacka</title>
</head>
<body>
<p>Vítejte v kalkulacke.</p>

<form method="POST">
<select name="operacia">
<option value="scitanie">scitanie</option>
<option value="odcitanie">odcitanie</option>
<option value="nasobenie">nasobenie</option>
<option value="delenie">delenie</option>
</select>
<input name="cislo1" type="text" />
<input name="cislo2" type="text" />
<input type="submit" value="Spocitaj" />
</form>

</body>
</html>
Avatar
Maroš Motaj
Člen
Avatar
Odpovedá na Jan Štrobl
Maroš Motaj:14.2.2018 12:45

Ďakujem, už chápem kde som robil chyby :) už mi to ide.

Avatar
František Kreisinger:5.3.2018 16:26

Proč tady v ukázce print_r($array) (třeba print_r($batoh); nebo print_r($batoh2);) vypíše jednotlivé prvky pole hezky každý na nový řádek, ale mně to namastí všechny do jednoho řádku i když použiji přesně ten příklad z ukázky?

Odpovedať
Začátečník v PHP, HTML i webovém programování vůbec.
Avatar
František Kreisinger:15.3.2018 13:13

Lze odesílat FORMulář jen po ENTER na údaji bez toho, aby ve formuláři byl nějaký SUBMIT? Nikde jsem se o tom zatím nedočetl. Přesto mi to tak funguje, viz třeba:

<FORM action="ViewPos­t.php" method="POST">
<INPUT type=TEXT size=10 name=Text value="????">
</FORM>

Je to někde popsáno? Jak to by to pak fungovalo, pokud by v tom formuláři nějaké SUBMIT byly?

Odpovedať
Začátečník v PHP, HTML i webovém programování vůbec.
Avatar
Odpovedá na František Kreisinger
Dominik Gavrecký:15.3.2018 13:23

Čo v prípade mobilov ? Aký enter by si tam použil ? http://www.alanflavell.org.uk/…uestion.html

Odpovedať
Hlupák nie je ten kto niečo nevie, hlupákom sa stávaš v momente keď sa na to bojíš opýtať.
Posledné komentáre sú na spodnej časti poslednej stránky.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 10 správy z 190.