Stránka: 1 z 1
| [ Príspevkov: 14 ] | |
Autor | Správa |
---|
|
Ahojte! Včera som začal riešiť databázu, kde budeme vkladať odchody a príchody zariadení v sklade. Taká malá pomôcka. Je to spravené aj v excely, no kolega sa zo mňa smial, že to môžem spraviť ako databázu spolu s webovým rozhraním. Tak reku dobre. Nakoľko som sa chcel ako som dávnejšie spomínal trochu webom venovať. Všetko som viac menej kopíroval a následne upravoval. Problém je, že mi nechce odoslať dáta z html do php a odtiaľ do databázy ktorú mám na servery. Tiež mi nechce zobraziť dáta z tabuľky ktorú si selectnem. Časom by som chcel tam pridať prihlasovanie. Ak ma viete na niečo odkázať prípadne pomôcť budem rád. prikladám kódy: Kód: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Sklad</title> <link rel="stylesheet" type="text/css" href="style.css"> </head>
<body> <img align= "middle" src="obrazky/hlavicka.png" class="background" >
<header id="nadpis">Pohyby a stav skladu</header> <form action="data.html" method="get"> <div class="container"> <label for="uname" style="padding: 10px"><b>Username</b></label> <input type="text" placeholder="Enter Username" name="uname" required>
<label for="psw"><b>Password</b></label> <input type="password" style="padding: 10px" placeholder="Enter Password" name="psw" required>
<button type="submit">Login</button> <label> <input type="checkbox" checked="checked" name="remember"> Remember me </label> </div> </form>
<div class="telo"> <form action="info.php" method="post"> <span style="padding: 10px">Príjem alebo výdaj tovaru:</span> <br/><br/> <!--<label for="nazovTovaru" style="padding: 10px"><b>Názov tovaru</b></label>--> <b style="padding: 10px">Názov tovaru</b> <select name="nazovZariadenia"> <option value="volvo">Volvo</option> <option value="saab">Saab</option> <option value="mercedes">Mercedes</option> <option value="audi">Audi</option> </select required> <!--<input type='submit' name='nazovTovaru'/>-->
<label for="pocetKS" style="padding: 10px"><b>Počet kusov</b></label> <input type="number" name="pocetKS" required>
<label for="datum" style="padding: 10px"><b>Dátum</b></label> <input type="date"name="datum" required>
<!--<label for="stav"><b>Stav</b></label>--> <b style="padding: 10px">Stav</b> <select name="stav"> <option value="prijem">príjem</option> <option value="vydaj">výdaj</option> </select required>
<br/><br/>
<label for="sklad" style="padding: 10px"><b>Sklad/predajňa</b></label> <input type="text" placeholder="ptdXXX/pks" name="sklad" required> <label for="poznamka" style="padding: 10px"><b>Poznámka</b></label> <input type="text" name="poznamka">
<button type="submit">Odoslať</button> </form> </div>
</body>
</html> PHP Kód: <?php
$connect = mysql_connect(“sql2.webzdarma.cz”, “meno”, “heslo”, “dbMeno”); if (!connect) { die('Connection Failed: ' . mysql_error()); { mysql_select_db(“dbmeno”, $connect);
mysql_query($connect,"INSERT INTO sklad ('nazovZariadenia', 'pocetKS', 'datum', 'sklad', 'stav', 'poznamka') VALUES ('$_POST[nazovZariadenia]', '$_POST[pocetKS]', '$_POST[datum]', '$_POST[sklad]', '$_POST[stav]', '$_POST[poznamka]')";
/*$user_info = “INSERT INTO sklad (nazovZariadenia, pocetKS, datum, sklad, stav, poznamka) VALUES ('$_POST[nazovZariadenia]', '$_POST["pocetKS"]','$_POST["datum"]','$_POST["sklad"]','$_POST["stav"]','$_POST["poznamka"]')”; if (!mysql_query($user_info, $connect)) { die('Error: ' . mysql_error()); }
echo “Your information was added to the database.”;
mysql_close($connect); */ ?>
<?php $servername = "sql2.webzdarma.cz"; $username = "meno"; $password = "heslo"; $dbname = "dbmeno";
// Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); }
$sql = "SELECT nazovZariadenia, SUM(pocetKS) FROM sklad GROUP BY nazovZariadenia"; $result = $conn->query($sql);
if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "<br> nazovZariadenia: ". $row["nazovZariadenia"]. " - pocetKS: ". $row["pocetKS"] . "<br>"; } } else { echo "0 results"; }
$conn->close(); ?>
|
|
Registrovaný: 19.03.07 Prihlásený: 25.12.24 Príspevky: 7076 Témy: 85 | 85 Bydlisko: BA |
Ako prve. Asi by si mal zacat od zakladov. Tento hurrdurr pristup je nahovno a to ti hovorim ako niekto kto na tom stale funguje ale snazi sa toho zbavit. Spracovaci skrip v php, nie v html (co je data.html vo form action?) Dalej, pouzvas $_GET ale v skripte samotnom cakas nieco v $_POST kde logicky nic nie je, lebo to nenaplnas. (cize bud chces method="post" alebo si to pytat z $_GET, odporucam prve, lebo v linku nebude vidiet data) Je celkom zbytocne mat niekolko krat zadavane v jednom skripte tie iste premene.
A nakoniec. Pouzil by som MVC framework, kde to mas spravene asi za 7 minut.(Yii, Laravel) Ale naucis sa menej, lebo toho musis menej chapat a iba jednoducho sledovat tutorial.
_________________ Desktop: CPU AMD R7 1700x @ 3.85GHz | Cooling be quiet! Dark Rock Pro 4 | MB ASRock X470 Taichi Ult. | RAM 4x8GB DDR4 G-SKILL TridentZ RGB 3000 CL16-16-16-36 | VGA Powercolor VEGA56 + Raijintek Morpheus II | SSD Crucial MX300 525GB | HDD Seagate Ironwolf 3TB 5900rpm | PSU CORSAIR RM750X | MONITOR AOC Q3279VWFD8 | MOUSE HyperX Pulsefire FPS + Razer eXactMat | HyperX Alloy FPS Brown | HyperX Cloud | ARCH x64 & Notebook: DELL inspiron 7537 i7 4500U, 16GB RAM, nv750, FHD IPS,Crucial M4 128GB | ARCH x64 & Surface Go 8/128 & Mobil: LG v40 ThinQ (2018) & SBC: Raspberry pi 0 | 3B+ & Headphones: Senheiser HD58X | AKG K551 + detachable cable mod | Linsoul TIN T2 | KZ SZN |
|
|
To prihlasovanie ignorujte prosím zatiaľ. V tých dátach ktoré potrebujem mám post ale aj tak to nefunguje a vyhodí mi len stránku s kódom. Ďalej hlavnú som uložil ako hlavna.php aj tak mi vyskočí len kód. takto mám hlavna.html/php (aj aj nefunguje ani s jednou) a čo je čudné ani ten select mi nefunguje :/
|
|
Registrovaný: 19.03.07 Prihlásený: 25.12.24 Príspevky: 7076 Témy: 85 | 85 Bydlisko: BA |
Ok, uz vidim. Myslim ze ta ukrizuje hocikto, koho heslo bude posielane v plaintexte cez get Aky kod? Vies ze tie kody nieco znamenaju? Tak ho sem napis. 500 je ze si nieco pokazil. (server error) Vies ako funguje tvoj data flow? Mas stranku (to prve) a odosle to obsah formu metodou aku si vybral do skriptu ktory je v action. Urob si novy file "test.php" daj tam toto: Kód: <?php print_r($_POST); ?> a daj si to ako action do formu a skus odoslat data.
_________________ Desktop: CPU AMD R7 1700x @ 3.85GHz | Cooling be quiet! Dark Rock Pro 4 | MB ASRock X470 Taichi Ult. | RAM 4x8GB DDR4 G-SKILL TridentZ RGB 3000 CL16-16-16-36 | VGA Powercolor VEGA56 + Raijintek Morpheus II | SSD Crucial MX300 525GB | HDD Seagate Ironwolf 3TB 5900rpm | PSU CORSAIR RM750X | MONITOR AOC Q3279VWFD8 | MOUSE HyperX Pulsefire FPS + Razer eXactMat | HyperX Alloy FPS Brown | HyperX Cloud | ARCH x64 & Notebook: DELL inspiron 7537 i7 4500U, 16GB RAM, nv750, FHD IPS,Crucial M4 128GB | ARCH x64 & Surface Go 8/128 & Mobil: LG v40 ThinQ (2018) & SBC: Raspberry pi 0 | 3B+ & Headphones: Senheiser HD58X | AKG K551 + detachable cable mod | Linsoul TIN T2 | KZ SZN |
|
|
Kód mi vypisuje to čo mám v tom súbore. Žiadnu chybnú hlášku. A k tomu testu len toľko , že žiadna zmena. Ukázalo <?php print_r($_POST); ?>
|
|
Registrovaný: 19.03.07 Prihlásený: 25.12.24 Príspevky: 7076 Témy: 85 | 85 Bydlisko: BA |
tak ti nefunguje php. Na akom serveri to skusas sputat?
_________________ Desktop: CPU AMD R7 1700x @ 3.85GHz | Cooling be quiet! Dark Rock Pro 4 | MB ASRock X470 Taichi Ult. | RAM 4x8GB DDR4 G-SKILL TridentZ RGB 3000 CL16-16-16-36 | VGA Powercolor VEGA56 + Raijintek Morpheus II | SSD Crucial MX300 525GB | HDD Seagate Ironwolf 3TB 5900rpm | PSU CORSAIR RM750X | MONITOR AOC Q3279VWFD8 | MOUSE HyperX Pulsefire FPS + Razer eXactMat | HyperX Alloy FPS Brown | HyperX Cloud | ARCH x64 & Notebook: DELL inspiron 7537 i7 4500U, 16GB RAM, nv750, FHD IPS,Crucial M4 128GB | ARCH x64 & Surface Go 8/128 & Mobil: LG v40 ThinQ (2018) & SBC: Raspberry pi 0 | 3B+ & Headphones: Senheiser HD58X | AKG K551 + detachable cable mod | Linsoul TIN T2 | KZ SZN |
|
|
A to ako spojazdním?:D HTML som flákal a to nehovorím o php. Používam sublime no podľa mňa by malo byť jedno či to robím v textovom dokumente alebo kde. Môže byť chyba v prehlidači (Opera)?
|
|
Registrovaný: 19.03.07 Prihlásený: 25.12.24 Príspevky: 7076 Témy: 85 | 85 Bydlisko: BA |
Myslim ze mas velke nedostatky vedomosti co sa tohto tyka. php potrebuje interpreter. Mas ho aspon nainstalovany? Nainstaluj a spojazdni si WAMP/LAMP.
_________________ Desktop: CPU AMD R7 1700x @ 3.85GHz | Cooling be quiet! Dark Rock Pro 4 | MB ASRock X470 Taichi Ult. | RAM 4x8GB DDR4 G-SKILL TridentZ RGB 3000 CL16-16-16-36 | VGA Powercolor VEGA56 + Raijintek Morpheus II | SSD Crucial MX300 525GB | HDD Seagate Ironwolf 3TB 5900rpm | PSU CORSAIR RM750X | MONITOR AOC Q3279VWFD8 | MOUSE HyperX Pulsefire FPS + Razer eXactMat | HyperX Alloy FPS Brown | HyperX Cloud | ARCH x64 & Notebook: DELL inspiron 7537 i7 4500U, 16GB RAM, nv750, FHD IPS,Crucial M4 128GB | ARCH x64 & Surface Go 8/128 & Mobil: LG v40 ThinQ (2018) & SBC: Raspberry pi 0 | 3B+ & Headphones: Senheiser HD58X | AKG K551 + detachable cable mod | Linsoul TIN T2 | KZ SZN |
|
|
Ešte poznámka. V mozile mi nezobrazí ani ten kód. A je jedno či dávam get alebo post, stále mám dáta v hlavičke. No takto. Server mám na servery free hostingu a stránku robím lokálne u seba na počítači. Môže byť to problém?:D
|
|
Registrovaný: 19.03.07 Prihlásený: 25.12.24 Príspevky: 7076 Témy: 85 | 85 Bydlisko: BA |
Nie ze moze, to je zarucene jeden z problemov. Znovu, php je interpretovany jazyk, ak nemas nainstalovany a nakonfigurovany interpreter, tak php kod nieje nic ine ako obycajny text. Ak to chces lokalne, nahod si na svoj pocitac Apache/mySQL/php (wmap/lamp podla toho ci mas windows alebo linux) Pripadne php prichadzal niekedy s vlastnym mikroserverom, ale ten nemam otestovany. Pripadne su textove editory ktore dokazu pracovat s ftp, cize mozes upravovat kod priamo na serveri.
_________________ Desktop: CPU AMD R7 1700x @ 3.85GHz | Cooling be quiet! Dark Rock Pro 4 | MB ASRock X470 Taichi Ult. | RAM 4x8GB DDR4 G-SKILL TridentZ RGB 3000 CL16-16-16-36 | VGA Powercolor VEGA56 + Raijintek Morpheus II | SSD Crucial MX300 525GB | HDD Seagate Ironwolf 3TB 5900rpm | PSU CORSAIR RM750X | MONITOR AOC Q3279VWFD8 | MOUSE HyperX Pulsefire FPS + Razer eXactMat | HyperX Alloy FPS Brown | HyperX Cloud | ARCH x64 & Notebook: DELL inspiron 7537 i7 4500U, 16GB RAM, nv750, FHD IPS,Crucial M4 128GB | ARCH x64 & Surface Go 8/128 & Mobil: LG v40 ThinQ (2018) & SBC: Raspberry pi 0 | 3B+ & Headphones: Senheiser HD58X | AKG K551 + detachable cable mod | Linsoul TIN T2 | KZ SZN |
|
|
ja manták. Super. Díky. Aj s sql sme si spúšťali server aj s php si spomínam sme mali apache. Idem to vyskúšať. Ešte som poslal požiadavku na server nech mi povolia wordpress a tam to skúsim. Díky moc!!!
|
|
Registrovaný: 19.03.07 Prihlásený: 25.12.24 Príspevky: 7076 Témy: 85 | 85 Bydlisko: BA |
Nie je zac, ale neviem na co ti v tomto pripade bude wordpress. Wordpress pouziva ODBC a nepovazoval by som to za zjednodusenie. S databazovou vecou ti bude skor na pritaz, preto som odporucal MVC framework.
_________________ Desktop: CPU AMD R7 1700x @ 3.85GHz | Cooling be quiet! Dark Rock Pro 4 | MB ASRock X470 Taichi Ult. | RAM 4x8GB DDR4 G-SKILL TridentZ RGB 3000 CL16-16-16-36 | VGA Powercolor VEGA56 + Raijintek Morpheus II | SSD Crucial MX300 525GB | HDD Seagate Ironwolf 3TB 5900rpm | PSU CORSAIR RM750X | MONITOR AOC Q3279VWFD8 | MOUSE HyperX Pulsefire FPS + Razer eXactMat | HyperX Alloy FPS Brown | HyperX Cloud | ARCH x64 & Notebook: DELL inspiron 7537 i7 4500U, 16GB RAM, nv750, FHD IPS,Crucial M4 128GB | ARCH x64 & Surface Go 8/128 & Mobil: LG v40 ThinQ (2018) & SBC: Raspberry pi 0 | 3B+ & Headphones: Senheiser HD58X | AKG K551 + detachable cable mod | Linsoul TIN T2 | KZ SZN |
|
|
Hej už ho vymazávam zo servera. Nevedel som, že ho nepotrebujem. Resp. až keď ho nainštalujem na server mi pôjde web Som v tom vykradnutý. Hovorím dva dni v tom "robím". Idem vyskúšať uploadovať moju a uvidím no // Spojený príspevok Štv 11.04.19 14:49Trochu som pokročil a opravil nejaké chyby. Na databázu ma pripojí no nezapisuje do nej data. Momentálne nevypíše chybu a vypíše POST Citácia: Connected successfullyArray ( [nazovZariadenia] => volvo [pocetKS] => 2 [datum] => 2019-04-04 [stav] => prijem [sklad] => pks [poznamka] => skuska ) A tiež je problém, že mi nevypíše počet kusov zo selektu. Citácia: Notice: Undefined index: pocetKS in /3w/borec.cz/p/pouzigoogle/info2.php on line 45 Kód: echo "<br> nazovZariadenia: ". $row["nazovZariadenia"]. " - pocetKS: ". $row["pocetKS"] . "<br>"; toto je ten riadok html Kód: <div class="telo"> <form action="info.php" method="post"> <span style="padding: 10px">Príjem alebo výdaj tovaru:</span> <br/><br/> <!--<label for="nazovTovaru" style="padding: 10px"><b>Názov tovaru</b></label>--> <b style="padding: 10px">Názov tovaru</b> <select name="nazovZariadenia"> <option value="volvo">Volvo</option> <option value="saab">Saab</option> <option value="mercedes">Mercedes</option> <option value="audi">Audi</option> </select required> <!--<input type='submit' name='nazovTovaru'/>-->
<label for="pocetKS" style="padding: 10px"><b>Počet kusov</b></label> <input type="number" name="pocetKS" required>
<label for="datum" style="padding: 10px"><b>Dátum</b></label> <input type="date"name="datum" required>
<!--<label for="stav"><b>Stav</b></label>--> <b style="padding: 10px">Stav</b> <select name="stav"> <option value="prijem">príjem</option> <option value="vydaj">výdaj</option> </select required>
<br/><br/>
<label for="sklad" style="padding: 10px"><b>Sklad/predajňa</b></label> <input type="text" placeholder="ptdXXX/pks" name="sklad" required>
<label for="poznamka" style="padding: 10px"><b>Poznámka</b></label> <input type="text" name="poznamka">
<button type="submit">Odoslať</button> </form> </div> Kód: <?php
$servername = "sql2.webzdarma.cz"; $username = "meno"; $password = "heslot";
// Create connection $conn = mysqli_connect($servername, $username, $password);
// Check connection if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } echo "Connected successfully";
mysqli_select_db($conn, "pouzigoogleb0463");
print_r($_POST);
$sql = "INSERT INTO sklad ('nazovZariadenia', 'pocetKS', 'datum', 'sklad', 'stav', 'poznamka') VALUES ('".mysqli_real_escape_string($conn,$_POST['nazovZariadenia'])."', '".mysqli_real_escape_string($conn,$_POST['pocetKS'])."', '".mysqli_real_escape_string($conn,$_POST['datum'])."', '".mysqli_real_escape_string($conn,$_POST['sklad'])."', '".mysqli_real_escape_string($conn,$_POST['stav'])."', '".mysqli_real_escape_string($conn,$_POST['poznamka'])."')"; /*mysql_query($connect,"INSERT INTO sklad ('nazovZariadenia', 'pocetKS', 'datum', 'sklad', 'stav', 'poznamka') VALUES ('$_POST[nazovZariadenia]', '$_POST[pocetKS]', '$_POST[datum]', '$_POST[sklad]', '$_POST[stav]', '$_POST[poznamka]')"*/
/*$user_info = “INSERT INTO sklad ('nazovZariadenia', 'pocetKS', 'datum', 'sklad', 'stav', 'poznamka') VALUES ('$_POST['nazovZariadenia']', '$_POST['pocetKS']','$_POST['datum']','$_POST['sklad']','$_POST['stav']','$_POST['poznamka']')”; if (!mysql_query($user_info, $connect)) { die('Error: ' . mysql_error()); } */
/*echo “Your information was added to the database.”;*/
$sql = "SELECT nazovZariadenia, SUM(pocetKS) FROM sklad GROUP BY nazovZariadenia"; $result = $conn->query($sql);
if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "<br> nazovZariadenia: ". $row["nazovZariadenia"]. " - pocetKS: ". $row["pocetKS"] . "<br>"; } } else { echo "0 results"; }
mysqli_close($conn); ?> prípadne ak len spamujem fórum dajte vedieť. vykašlem sa na to. // Spojený príspevok Pia 12.04.19 8:09up neviem si s tým rady // Spojený príspevok Pia 12.04.19 9:34Problém vyriešený zatiaľ Chyba bola syntaktická v oboch prípadoch. V tom selecte treba dať pozor na Citácia: pocetKS: ". $row["SUM(pocetKS)"] Kód: <?php
$servername = "sql2.webzdarma.cz"; $username = "uname"; $password = "heslo";
// Create connection $conn = mysqli_connect($servername, $username, $password);
// Check connection if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } echo "Connected successfully";
if(mysqli_select_db($conn, "dbname")) echo "Connected successfully";
print_r($_POST);
$sql = "INSERT INTO sklad (nazovZariadenia, pocetKS, datum, sklad, stav, poznamka) VALUES ('$_POST[nazovZariadenia]', '$_POST[pocetKS]','$_POST[datum]','$_POST[sklad]','$_POST[stav]','$_POST[poznamka]')";
if (!mysqli_query($conn, $sql)) {die('Error: '. mysqli_error($conn));};
$sql = "SELECT nazovZariadenia, SUM(pocetKS) FROM sklad GROUP BY nazovZariadenia"; $result = $conn->query($sql);
if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "<br> nazovZariadenia: ". $row["nazovZariadenia"]. " - pocetKS: ". $row["SUM(pocetKS)"] . "<br>"; } } else { echo "0 results"; }
mysqli_close($conn); ?>
|
|
Registrovaný: 07.08.06 Prihlásený: 18.11.21 Príspevky: 947 Témy: 268 | 268 Bydlisko: Levice |
a co osetrit vstupne udaje a celkova bezpecnost? Hned vkladas POST udaje do dtb bez akehokolvek checku, ci su data korektne vyplnene a tiez to nie je osetrene voci injection a pod. I ked ak to pouzivas len ty a kolega, tak to je jedno, ale aspon tie vstupne udaje by som osetril. A ten kod je katastrofa Trosku sprehladnit, DB connect pouzit metodu a potom ju volat, prerobit strukturu, vyuzit OOP atd., ale ked nemam cas, tak niekedy aj u mna to podobne vyzera
|
|
Stránka: 1 z 1
| [ Príspevkov: 14 ] | |
|