Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 7 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 25.10.08
Prihlásený: 24.12.10
Príspevky: 12
Témy: 4
Príspevok NapísalOffline : 09.11.2008 15:18

Zdravim. mam nasledovny problem. chcem data s formularu na stranke zapisat do databazy. vyplnim formular, stlacim odoslat, vypise mi ze sa vsetko podarilo ale jedine co sa doplni je id (auto_increment). Ostatne hodnoty su prazdne.

insert-story.php (súbor s formulárom)
Kód:
<form action="uloz.php" method="post">

<fieldset><legend>Pridať pokračovanie príbehu</legend>

text:<br />
<textarea name="text" rows="20" cols="105"></textarea> <br />

heslo:<br />
<input name="pass" type="text" /><br />

<input type="submit" value="Vložiť pokračovanie" /><br />

</fieldset></form>


uloz.php (subor do ktoreho sa postnu data s formularu)
Kód:
<?php
require_once("mysql.php");

$_POST['text'] = $text;

$_POST['pass'] = $pass;



$sql = mysql_query("INSERT INTO story(text,pass) VALUES('$text','$pass')");



if($sql){

echo "Záznam bol úspešne vložený do databázy!";

} else {

echo "Záznam sa nepodarilo vložiť do databázy! Becaose of pink elephant!";

}

mysql_close();

?>


mysql.php (subor s loginom do db)
Kód:
<?php

  define("SERVER","localhost");

  define("LOGIN","mystery");

  define("PASS","*****");

  define("DATABASE","mystery");

 

  $dbc = mysql_connect(SERVER,LOGIN,PASS) or die('Pripojenie k serveru zlyhalo! Because of pink elephant!');

  mysql_select_db(DATABASE) or die('Nepodarilo sa označiť databázovú tabuľku!');

  ?>


http://deafboy.cicolina.org/fileman/directory2index/work/db.png

Pani, trapim sa s tym uz niekolko hodin. prosim o radu.


Offline

Čestný člen
Čestný člen
zapisuje prazdne hodnoty do databazy, preco?

Registrovaný: 17.10.06
Prihlásený: 08.01.11
Príspevky: 1752
Témy: 17
Príspevok NapísalOffline : 09.11.2008 15:33

snad
Kód:
$text = $_POST['text'];
$pass = $_POST['pass'];







_________________
A Real Programmer might or might not know his wife's name. He does, however, know the entire ASCII code table.
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 25.10.08
Prihlásený: 24.12.10
Príspevky: 12
Témy: 4
Príspevok Napísal autor témyOffline : 09.11.2008 18:44

Srdecna vdaka... takto to funguje
Kód:
$text = $_POST['text'];
$pass = $_POST['pass'];


len ma este trapi ci je normalne ak mi to do textoveho pola zapisuje vo forme "0x706973616e792074657874"


Offline

Čestný člen
Čestný člen
zapisuje prazdne hodnoty do databazy, preco?

Registrovaný: 17.10.06
Prihlásený: 08.01.11
Príspevky: 1752
Témy: 17
Príspevok NapísalOffline : 09.11.2008 19:22

akeho typu mas dane stlpce?







_________________
A Real Programmer might or might not know his wife's name. He does, however, know the entire ASCII code table.
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 21.02.07
Prihlásený: 21.02.10
Príspevky: 3984
Témy: 96
Príspevok NapísalOffline : 09.11.2008 19:25

ok takže ešte by som pohodkol:
1, tabuľka má zlú architektúru
2, tvoj kód je nezabezpečený a je veľmi jednoduché spraviť naň útok
3, úvodný príspevok sa mi páči je veľmi jasný
4, nie, nie je bežné že ti zapisuje tento tvar, na text odporúčam typ TEXT a na názov VARCHAR


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 25.10.08
Prihlásený: 24.12.10
Príspevky: 12
Témy: 4
Príspevok Napísal autor témyOffline : 13.11.2008 15:57

No ako reakciu na to ze mam kod nezabezpeceny, musim povedat ze je to moja prva (resp. druha) stranka v php+sql a budem rad, ked to vobec pojde. Veci zabezpecenia budem riesit potom ked to bude fungovat

Zistil som ze zapisovanie textu v tej divnej forme je v poriadku (struktura tabulky je v screene v prvom poste)

Mám ale ďalší problém (nechcem zakladat novy topic aby som to tu moc nezabordelil). K veci... chcem porovnat heslo ktore uzivatel napise na stranku (nie login, pusti ho to k dalsiemu textu ktory vytiahne z db) s heslom ktore je v databaze k danemu clanku. Vypise mi to sice ze hesla su zhodne, ale pritom tam mozem napisat cokolvek. Pre ukazku som dal pred porovnanim vypisat zadane heslo a heslo v db.

Subor s formularom:
Kód:
...
<div align="center" width="300">
<form action="check.php" method="post">

<fieldset><legend>Ďalej</legend>

heslo:<br />
<input name="inpass" type="text" />

<input type="submit" value="Prečítať pokračovanie" /><br />

</fieldset></form>
</div>
...


check.php
Kód:
<?php
require_once("mysql.php");

     mysql_select_db(DATABASE) or die('Nepodarilo sa označiť databázovú tabuľku!');

     $sql = mysql_query("SELECT * FROM story");
     $data = mysql_fetch_array($sql);
     echo $data["pass"];
     echo $_POST['inpass'];


if ($_POST['inpass'] = $data["pass"]){
echo "Heslá sa zhodujú";
} else {
echo "Heslá sa nezhodujú";
}

mysql_close();
?>


Pravdepodobne tam mam len nejaku sprostost spravenu ako v pripade vyssie, trapim sa nad tym niekolko dni .

Odkaz na stranku:http://deafboy.cicolina.org/mystery/
formular na zadanie hesla sa nachadza dolu (ale to sa myslim neda priehliadnut)


Offline

Skúsený užívateľ
Skúsený užívateľ
zapisuje prazdne hodnoty do databazy, preco?

Registrovaný: 30.05.06
Prihlásený: 08.10.14
Príspevky: 1756
Témy: 35
Bydlisko: BA - WESTSIDE
Príspevok NapísalOffline : 13.11.2008 16:09

V tomto prípade ide o klasický problém dvojitého rovná sa. Ty máš na inkriminovanom riadku
Kód:
if ($_POST['inpass'] = $data["pass"]){
. V skutočnosti ale = nie je operátor porovnávania ale priraďovania a tak sa stane, že do premennej $_POST['inpass'] sa zapíše obsah premennej $data['pass'] a keďže táto operácia prebehne bez problémov, výraz sa vyhodnotí ako logické true a prejde sa do príslušnej časti podmienky.

Celý problém zanikne, akonáhle začneš namiesto priraďovania porovnávať:
Kód:
if ($_POST['inpass'] == $data["pass"]){


Niektoré jazyky nedovoľujú priraďovanie v podmienkach (a teraz neviem, či to je C#, Java, Python alebo Ruby, prosím niekoho, kto to vie presne, nech sa ozve) a tak sa jednoducho týmto chybám vyhnú, iné jazyky na priraďovanie používajú napr. operátor := (alebo :-, napr. Prolog).

Niektoré kompilátory na priraďovanie v podmienkach upozorňujú warningami (alebo sa mi to len zdá a je to len moje zbožné želanie? opäť, ak to niekto vie presne, nech sa ozve).

Situácia v PHP je však taká, že niekedy sa priraďovanie priamo v podmienke používa a naviac je PHP interpretovaný jazyk, takže žiadne upozornenia ani chyby to nevyvolá. Preto treba byť pri písaní (aj čítaní) kódu dôsledný, študovať manuál, a testovať, testovať, testovať.







_________________
A. S. Tanenbaum píše:
The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.
Odpovedať na tému [ Príspevkov: 7 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. MSI FX 603 prečo áno, prečo nie?

v Notebooky a netbooky

5

1179

02.08.2011 22:15

KekkeiGenkai Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Edit - prázdne

v Delphi, Visual Basic

3

661

05.06.2011 0:11

coldak Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Prázdne okná s možnosťami

v Ostatné programy

2

348

30.11.2015 8:50

BrNcO Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Nečíta mi prazdne DVD

v Optické zariadenia

0

588

10.02.2014 12:26

skodo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Prázdné strany pri tlačení v Excely

v Ostatné programy

1

1216

01.05.2006 20:07

Intelman Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. I/D: Prazdne spindle na 10 CD/DVD

v Vymením a darujem

1

288

17.03.2018 19:41

tatko Tom Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Pomale nacitavanie obrazkov v Exploreri 8 - prazdne okna.

v Sieťové a internetové programy

1

495

22.09.2010 23:40

Milanese Zobrazenie posledných príspevkov

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie. K: Prazdne Cartridge do tlaciarni HP, typ HP300

v Kúpim

1

311

11.09.2013 15:01

Romi Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Pri štarte win XP sa v Program Files vytvoria prázdne zložky

v Operačné systémy Microsoft

3

582

01.03.2009 21:59

i666 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. USB - problém s pamäťou, údajne je plné a pri tom je skoro prázdne

v Ostatné zariadenia

3

692

15.10.2015 16:33

4040 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. probook 4540s netvorí DVD-R "mínus" ani len nenačíta (iba prázdne)

v Optické zariadenia

8

563

19.01.2015 19:29

4040 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. hexadecimálne hodnoty

v Ostatné

3

1464

02.03.2007 9:54

javo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. stabilné hodnoty

v ATI/AMD grafické karty

6

316

05.08.2015 8:43

brmbo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. SpeedFan opačné hodnoty

v Chladiče a všetky druhy chladenia

1

266

02.08.2014 17:28

brmbo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. zistenie hodnoty autoincrement

v Databázy

3

662

07.11.2010 18:21

pogo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. margin, padding hodnoty

v HTML, XHTML, XML, CSS

1

533

04.08.2008 16:20

lio Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra