Nefunkcny kod na vkladanie dat do databazy

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

fili
Level 1.5
Level 1.5
Příspěvky: 102
Registrován: prosinec 11
Pohlaví: Muž
Stav:
Offline

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod fili » 05 úno 2012 16:00

Pokial ide o SQL injection, tak to este musim zistit ako sa to robi
A ten kod by mal vyzerat takto? Myslim. ze asi nie pretoze mi sice vypisalo,
ze TABLE pes created, ale v skutocnosti mi v databaze ziadna tabulka nepribudla.


<?php
$mysql_query="CREATE TABLE pes(
id INT NOT NULL AUTO_INCREMENT ,
nazov VARCHAR( 255 ) NOT NULL ,
kraj VARCHAR( 255 ) NOT NULL ,
region VARCHAR( 255 ) NOT NULL ,
miesto VARCHAR( 255 ) NOT NULL ,
kapacita VARCHAR( 10 ) NOT NULL ,
PRIMARY KEY ( id )
)";

if ('($sql,$con)')
{
echo "TABLE pes created";
}
else
{
echo "Error creating database: " . mysql_error();
};

?>

Reklama
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod CZechBoY » 05 úno 2012 21:04

njn..
SQL injection se vcelku dobře dá vyvarovat použitím MySQL_Real_Escape_String (případně MySQLi rozšíření)
PHP píše:$query=MySQL_Query($sql);
If($query)
echo "Query proběhlo v pořádku";
Else
echo "Query vyhodilo chybu!!<br><b>".MySQL_Error()."</b>";


takhle to dělej.. ten tvůj příklad je k ničemu pač jakýkoliv string je pravdivostní hodnota (boolean) TRUE (pravda)
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

fili
Level 1.5
Level 1.5
Příspěvky: 102
Registrován: prosinec 11
Pohlaví: Muž
Stav:
Offline

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod fili » 06 úno 2012 22:05

Vdaka za radu toto vyskúšam MySQL_Real_Escape_String (případně MySQLi rozšíření).
Cast kodu, ktoru si mi skritizoval som nasiel na skole w3c, tak som myslel, ze by to malo slapat.
Tabulku mi v databaze vytvorilo, ale nevlozilo tie udaje a este jeden problem,
nemozeme sa priamo v databaze dostat do tabulky - ked chcem kliknut na "Prechadzat",
tak sa mi kurzor zmeni na cerveny stvorc s bielym krizikom uprostred, co s tym?

Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod CZechBoY » 06 úno 2012 22:10

v PMA? to znamená že tam nemá data ;)
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

fili
Level 1.5
Level 1.5
Příspěvky: 102
Registrován: prosinec 11
Pohlaví: Muž
Stav:
Offline

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod fili » 06 úno 2012 23:06

Ale ako ich tam dostanem, ked mi ich dump vypisal, ale v tabulke nie su, a kedze ma tam nechce pustit, tak
ich tam nemozem vlozit rucne co s tym?

Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod CZechBoY » 06 úno 2012 23:32

SQL příkaz pro vložení dat začíná na INSERT INTO (sloupec,sloupec1) VALUES(hodnota1,hodnota2)
vždy musí být stejný počet sloupců v první a druhé závorce
napiš kod v kterým ti to nejde
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

fili
Level 1.5
Level 1.5
Příspěvky: 102
Registrován: prosinec 11
Pohlaví: Muž
Stav:
Offline

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod fili » 07 úno 2012 22:38

No a neexistuje sposob ako sa tam dostat rucne? Jednu tabulku som robil rucne a v pohode som ju naplnil.
Tu je kod:
<?php

var_dump($_POST);
$nazov = $_POST['nazov'];
$kraj = $_POST['kraj'];
$region = $_POST['region'];
$miesto = $_POST['miesto'];
$kapacita = $_POST['kapacita'];

$sql="INSERT INTO pes(nazov, kraj, region, miesto, kapacita) VALUES('$nazov', '$kraj', '$region', '$miesto' , '$kapacita')";

?>

Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod CZechBoY » 07 úno 2012 22:39

a kde je mysql_query($sql) ?
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

fili
Level 1.5
Level 1.5
Příspěvky: 102
Registrován: prosinec 11
Pohlaví: Muž
Stav:
Offline

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod fili » 08 úno 2012 09:28

Jeeej :lol: som ja ale, ....
Dakujem funguje. Teraz sa vrhnem na registraciu uzivatela, ale ved to by malo byt to iste, ako vkladanie
udajov do tabulky, alebo nie
? Len to budem musiet osetrit proti SQL injection. Jedna vec: ako najlepsie zazalohjem
tabulky z databazy, aby sa dala v pripade potreby rychlo obnovit?

Uživatelský avatar
Ellrohir
nováček
Příspěvky: 49
Registrován: prosinec 11
Bydliště: Praha
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod Ellrohir » 08 úno 2012 10:19

nejlepší a nejpohodlnější je udělat si export db do souboru v phpMyAdminu

na ruční export dat z tabuky do souboru se podle pana Googla dá použít:

Kód: Vybrat vše

"SELECT * INTO OUTFILE 'soubor.sql' FROM tabulka";
"Zprávy mají velikost, třeba i nulovou, a mají nějaký význam, třeba i žádný."

fili
Level 1.5
Level 1.5
Příspěvky: 102
Registrován: prosinec 11
Pohlaví: Muž
Stav:
Offline

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod fili » 08 úno 2012 17:08

Skusal som to, ale zamietlo mi pristup
Access denied for user '....'@'.....' (using password: YES)

Ale aj tak je to len jednosmerne, keby to fungovalo tak to len vytvori subor,
ale ako potom z neho nahodit databazu, keby bolo treba?

--- Doplnění předchozího příspěvku (08 Úno 2012 17:10) ---

zeby s LOAD DATA?

Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Nefunkcny kod na vkladanie dat do databazy

Příspěvekod CZechBoY » 08 úno 2012 17:45

prostě si otevři pma a zvol databázi, tabulku a nahoře v menu dej EXPORT, zaklikej jak to potřebuješ exportnout a dole dej proveď
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW


Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: DotNetDotCom.org [Bot] a 2 hosti