Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
Autor | Správa |
---|
Registrovaný: 08.12.09 Prihlásený: 24.06.13 Príspevky: 58 Témy: 13 | 13 |
Chcel by som vás poprosiť že či by mi niekdo neopravil ten skript, nezapisuje mi do databázy , tu je ten skript:
Kód: <?php $con = mysql_connect("mysql","1976-wsbcms","nepovem"); if (!$con) { die('MySql chyba: ' . mysql_error()); }
mysql_select_db("1976-wsbcms", $con);
mysql_query("INSERT INTO `clanky` (`nazovclanku`, `nazovclankuvmenu`, `obsahclanku`, `adminfunkcie`) VALUES ($nazovsuboru, '$nazovsuboruvmenu', $obsahsuboru, '<a href=\"zobraz.php?clanok=$filename\">$nazovsuboruvmenu</a><br>')");
mysql_close($con); ?>
Ďakujem
| Nazov temy je nepresny, nabuduce skus vymysliet lepsi. Ďuri
|
|
Registrovaný: 30.05.06 Prihlásený: 08.10.14 Príspevky: 1756 Témy: 35 | 35 Bydlisko: BA - WESTSIDE |
Ťažko. Nezapisuje znamená, že sa nezapíše riadok, alebo sa zapíše prázdny riadok? Vypíše nejakú chybu? (ak nie, nemáš vypnuté zobrazovanie chýb, nemáš ich niekde v logu?)
_________________
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. |
|
Registrovaný: 14.04.09 Prihlásený: 20.09.24 Príspevky: 1188 Témy: 198 | 198 |
Kód: <?php $con = mysql_connect("mysql","1976-wsbcms","nepovem") or die ( "Nepodarilo sa spojit so serverom. Chyba: ". mysql_error() );
mysql_select_db("1976-wsbcms", $con) or die ( mysql_error() );
$admin_funkcie = "<a href=\"zobraz.php?clanok=" . $filename . "\">" . $nazovsuboruvmenu . "</a><br>";
$poziadavka = "INSERT INTO clanky (nazovclanku, nazovclankuvmenu, obsahclanku, adminfunkcie) VALUES ('$nazovsuboru', '$nazovsuboruvmenu', '$obsahsuboru', '$admin_funkcie')";
mysql_query( $poziadavka ) or die ( "Nepodarilo sa odoslat poziadavku 1. Chyba:". mysql_error() );
mysql_close($con); ?>
A takto ??? ... podla mna som to opravil dobre
//1x editovane
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 | 34 Bydlisko: Brno |
WebScript
Tie premenne $nazovsuboru a ostatne vznikaju ako? Zazrakom? Pouzi ten daemonov skript s vypisom MySQL chyb plus opravou apostrofov plus na zaciatok si daj este
Kód: error_reporting(E_ALL); Potom mozes riesit problemy.
|
|
Registrovaný: 08.12.09 Prihlásený: 24.06.13 Príspevky: 58 Témy: 13 | 13 |
Teraz mi píše Nepodarilo sa odoslat poziadavku 1. Chyba:Unknown column 'adminfunkcie' in 'field list'
Mohli by ste mi napísať, že ako to mám byť, aby mi to fungovalo?
Ďakujem
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 | 34 Bydlisko: Brno |
A vies ty citat? "Neznamy stlpec adminfunkcie"...hm, co to moze znamenat?
|
|
Registrovaný: 08.12.09 Prihlásený: 24.06.13 Príspevky: 58 Témy: 13 | 13 |
Dik, už mi to ide, ale zapisuje mi to v db iba nazovsuboruvmenu a ostatné nezapisuje ani adminfunkcie, a mám všetky tie tabulky, neviem prečo.
Tu je ten html formulár:
Kód: <?php session_start(); if ($_SESSION['authuser'] != 1) { echo "<p>Nemáte oprávnenie pre vstup do AdminPanelu</p>\n"; exit(); } ?> <? include "system/adminheader.php"; ?> <div id="wrapper"> <div id="header"> <a href="/"><img src="/logo.gif" alt="" width="203" height="102" class="logo" /></a> </div> <ul id="nav"> <? include "system/adminnav.php"; ?> </ul> <div id="content" class="clearfix"> <div id="col_1"> <h2>Menu</h2> <ul id="subnav"> <? include "system/adminmenu.php"; ?> </ul> </div> <div id="col_2"> <script type="text/javascript" src="editor/tinymce/jscripts/tiny_mce/tiny_mce.js"></script>
<script type="text/javascript"> tinyMCE.init({ theme : "advanced", mode : "textareas", plugins : "fullpage,emoticons", theme_advanced_buttons3_add : "fullpage,emoticons" }); </script> </head> <body> <form action="add_clanok.php" method="POST"> <div id="controls"><center>Názov súboru v menu: <input type="text" value="" name="nazovsuboruvmenu" /> - s diakritikou</center></div> <div id="controls"><center>Názov súboru: <input type="text" value="" name="nazovsuboru" /> - bez diakritiky</center></div> <div id="controls"><center>Obsah súboru: <textarea name="obsahsuboru" id="window" onkeyup="javascript:document.getElementById('submit').disabled='';document.getElementById('submit').value=' uložiť ';"></textarea></center></div> <div id="controls"><center><input id="submit" type="submit" value="Uloz" /></center></div></form> </div> <br /> </div> </div> <div id="footer"><small>Táto stránka beží na systéme <a href="http://webscript.biz/wsb" target="_blank">WSB CMS</a>.<br /> Design stránky <a href="http://cssweblayouts.com/" target="_blank">CSS Web Layouts</a></a></small></div> </div> </body> </html>
Ak by mi to niekdo vyriešil bol by som mu velmy vďačný.
Ďakujem
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 | 34 Bydlisko: Brno |
Tie premenne, ktore chces ukladat, neexistuju. Nespoliehaj sa na register_globals a pouzivaj klasicke $_POST['name-inputu'].
|
|
Registrovaný: 08.12.09 Prihlásený: 24.06.13 Príspevky: 58 Témy: 13 | 13 |
teraz to mám takto:
Kód: <?php session_start(); if ($_SESSION['authuser'] != 1) { echo "<p>Nemáte oprávnenie pre vstup do AdminPanelu</p>\n"; exit(); } ?> <? include "system/adminheader.php"; ?> <div id="wrapper"> <div id="header"> <a href="/index.php"><img src="/logo.gif" alt="" width="203" height="102" class="logo" /></a> </div> <ul id="nav"> <? include "system/adminnav.php"; ?> </ul> <div id="content" class="clearfix"> <div id="col_1"> <h2>Menu</h2> <ul id="subnav"> <? include "system/adminmenu.php"; ?> </ul> </div> <div id="col_2"> <?php $con = mysql_connect("mysql","1976-wsbcms","2009ftp") or die ( "Nepodarilo sa spojit so serverom. Chyba: ". mysql_error() );
mysql_select_db("1976-wsbcms", $con) or die ( mysql_error() );
$admin_funkcie = "<a href=\"zobraz.php?clanok=" . $filename . "\">" . $nazovsuboruvmenu . "</a><br>";
$poziadavka = "INSERT INTO clanky (nazovclanku, nazovclankuvmenu, obsahclanku, adminfunkcie) VALUES ('$_POST['nazovsuboru'];', '$_POST['nazovsuboruvmenu'];', '$_POST['obsahsuboru'];', '$admin_funkcie')";
mysql_query( $poziadavka ) or die ( "Nepodarilo sa odoslat poziadavku 1. Chyba:". mysql_error() );
mysql_close($con); ?> </div> </div> <div id="footer"><small>Táto stránka beží na systéme <a href="http://webscript.biz/wsb" target="_blank">WSB CMS</a>.<br /> Design stránky <a href="http://cssweblayouts.com/" target="_blank">CSS Web Layouts</a></a></small></div> </div> </body> </html>
a píše mi to Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/www/webscript.biz/wsbcms/add_clanok.php on line 29
Nemohol by si mi to upraviť ty aby to fungovalo(alebo aj niekdo iný)
Ďakujem
|
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 | 81 |
$_POST['nazovsuboru'];'
co tam roby bodkociarka?
a nedavaj $_POST ale to preved najprv do $nazovsuboru
| Nepis viac prispevkov za sebou, pouzivaj tlacitko Uprav. Ďuri pardon lama Nic sa nestalo :-> Ďuri
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 | 34 Bydlisko: Brno |
Tu nejde o to, aby si to previedol do inej podoby, ale aby si to zabezpecil voci SQL injection a inym utokom.
|
|
Registrovaný: 07.03.06 Prihlásený: 23.01.11 Príspevky: 404 Témy: 2 | 2 Bydlisko: Prešov / Pr... |
pilná lama glama: geniálne, Ďuri mu správne poradil, aby sa nespoliehal na zapnuté register_globals a nato ty napíšeš somarinu, aby si to previedol na $nazovsubor, čo je úplne zbytočné. Načo by to robil? Aby si zbytočne zväčšil kód?.
WebScript: bodkočiarky v strede query nemajú čo robiť.
Pokiaľ vkladáš záznamy, pozor na úvodzovky. Môžeš to napísať 3 spôsobmi: Kód: ...VALUES ('" . $_POST['nazovsuboru'] . "',... ...VALUES ('$_POST[nazovsuboru]',... ...VALUES ('{$_POST["nazovsuboru"]}',...
Keďže by si mal dáta ošetriť, použiješ zápis VALUES ('" . mysql_real_escape_string($_POST['nazovsuboru']) . "', ...
Nespoliehaj sa na short tags a začiatok php skriptov zapisuj <?php (samotné <? nestačí, nemusí fungovať všade).
+ nezabudni dáta ošetrovať napr pomocou mysql_real_escape_string.
Viď http://php.vrana.cz/obrana-proti-sql-injection.php
|
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 | 81 |
mylan
len som sa zle vyjadril a kym som zeditoval prispevok uz Duri vysvetlil o co ide.
Ja si vzdy osetrim funkciou vstupy podla obsahu a preto nedavam nikdy get ci post priamo do sql
|
|
Registrovaný: 08.12.09 Prihlásený: 24.06.13 Príspevky: 58 Témy: 13 | 13 |
Ja používam toto všade:
Kód: <?php session_start(); if ($_SESSION['authuser'] != 1) { echo "<p>Nemáte oprávnenie pre vstup do AdminPanelu</p>\n"; exit(); } ?>
Je to len pre adminov, tak si nemyslim že by si sami hackli svoj web, takto je zabezpečeny aj ten subor co uklada ten prispevok do db.
Ako by sa dal ubranit voci sql injection?
Chel by som vás poprosiť, ja som to všetko spravil čo ste mi napísali, ale zapíše mi to iba do nazovclankuvmenu
Nemohli by ste mi to niekdo napísať tak aby to fungovalo?
Ďakujem
|
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 | 81 |
1-Je to len pre adminov, tak si nemyslim že by si sami hackli svoj web, to nie ale niekto by mohol skopyrovat ich cookie(sniff) a web by ho bral ako admina v danom momente
2-daj si echo toho sql dotazu a uvidis ake su tam hodnoty, podla toho lokalizuj chybu
|
|
Registrovaný: 07.03.06 Prihlásený: 23.01.11 Príspevky: 404 Témy: 2 | 2 Bydlisko: Prešov / Pr... |
Pravda, veď načo ošetrovať čokoľvek, keď sa do administrácie dostane každý... http://img96.imageshack.us/img96/8448/wsbcms.jpg (screen z wsbcms.webscript.biz)
Naštuduj si hlavne ošetrovanie vstupov, lebo to nerobíš absolútne vôbec. Čo sa stane ak budeš chcieť do administrácie pridať len redaktora a ten si vytiahne celú DB?
Ukáž ako si ten kód nakoniec upravil...
|
|
Registrovaný: 08.12.09 Prihlásený: 24.06.13 Príspevky: 58 Témy: 13 | 13 |
Ja tam nikde nevidím chybu, vypisuje mi to presne to čo zadám do formulára:
Kód: INSERT INTO clanky (nazovclanku, nazovclankuvmenu, obsahclanku, adminfunkcie) VALUES ('asdfghjkl', 'ľščťžýáíé', '
asdfghjklasdfghjklasdfghjklasdfghjkasdfghjklasdfghjkl ', 'ľščťžýáíé ')
A aj tak mi to nezapisuje do db nazovclanku , obsahclanku , adminfunkcie
Nevedeli by ste mi niekdo opraviť alebo napísat nový skript?
Ďakujem
//Ako si sa tam dostal? Ja som niekde čítal o sesion že to je celkom bezpečné. Ale mne to neva, to je systém ktorý iba testujem, hotový ale nepoužíva db mám v pc, naschvál som dal inú adresu, keď ho budem skúšať, prerábať, dávať preč ochranu, aby som vyskúšal že či mi to pôjde všetko dostať do db, aj potom odtial dávať preč, aj heslo do administrácie.
|
|
Registrovaný: 07.03.06 Prihlásený: 23.01.11 Príspevky: 404 Témy: 2 | 2 Bydlisko: Prešov / Pr... |
http://wsbcms.webscript.biz/clanky.php tu máš formulár na pridávanie článkov, ktorý vyzerá takto: Kód: <form action="add_clanok.php" method="POST"> <div id="controls"><center>Názov súboru v menu: <input type="text" value="" name="nazovsuboruvmenu" /> - s diakritikou</center></div> <div id="controls"><center>Názov súboru: <input type="text" value="" name="nazovsuboru" /> - bez diakritiky</center></div> <div id="controls"><center>Obsah súboru: <textarea name="obsahsuboru" id="window" onkeyup="javascript:document.getElementById('submit').disabled='';document.getElementById('submit').value=' uloi ';"></textarea></center></div> <div id="controls"><center><input id="submit" type="submit" value="Uloz" /></center></div></form>
Inputy sa tam volajú nazovsuboruvmenu, nazovsuboru, obsahsuboru. Avšak chceš spracovávaš hodnoty s inými názvami: nazovclanku, nazovclankuvmenu, obsahclanku.
Zjednoť si to a premenuj premenné name v inputoch.
|
|
Registrovaný: 08.12.09 Prihlásený: 24.06.13 Príspevky: 58 Témy: 13 | 13 |
Teraz to mám takto:
Kód: <?php $con = mysql_connect("mysql","1976-wsbcms","aaa") or die ( "Nepodarilo sa spojit so serverom. Chyba: ". mysql_error() );
mysql_select_db("1976-wsbcms", $con) or die ( mysql_error() );
$admin_funkcie = "<a href=\"zobraz.php?clanok=" . $filename . "\">" . $nazovsuboruvmenu . "</a><br>";
$poziadavka = "INSERT INTO clanky (nazovclanku, nazovclankuvmenu, obsahclanku, adminfunkcie) VALUES ('$nazovsuboru', '$nazovsuboruvmenu', '$obsahsuboru', '$admin_funkcie')";
mysql_query( $poziadavka ) or die ( "Nepodarilo sa odoslat poziadavku 1. Chyba:". mysql_error() );
mysql_close($con); ?>
A vloží mi to zase do db iba nazovsuboruvmenu
Nemohli by ste mi to niekdo spraviť?
Ďakujem
|
|
Registrovaný: 07.03.06 Prihlásený: 23.01.11 Príspevky: 404 Témy: 2 | 2 Bydlisko: Prešov / Pr... |
Ach jaj, to je ako hrach na stenu hádzať. Ani sa už neobťažujem to nejako ošetriť, bolo by to zbytočné... Kód: $admin_funkcie = "<a href=\"zobraz.php?clanok=" . $filename . "\">" . $_POST["nazovsuboruvmenu"] . "</a><br>";
$poziadavka = "INSERT INTO clanky (nazovclanku, nazovclankuvmenu, obsahclanku, adminfunkcie) VALUES ('" . $_POST["nazovsuboru"] . "', '" . $_POST["nazovsuboruvmenu"] . "', '" . $_POST["obsahsuboru"] . "', '$admin_funkcie')";
|
|
Registrovaný: 08.12.09 Prihlásený: 24.06.13 Príspevky: 58 Témy: 13 | 13 |
Ako si sa tam dostal?
A ako viac sa to dá zabezpečiť keď na začiatok všetkých admin súborov som dal:
Kód: <?php session_start(); if ($_SESSION['authuser'] != 1) { echo "<p>Nemáte oprávnenie pre vstup do AdminPanelu</p>\n"; exit(); } ?>
Chcel by som to vedieť aby som už nespravil tú istú chybu zase.
Ďakujem
|
|
Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v Databázy | 15 | 744 | 01.07.2012 18:24 newboy1 | | v Databázy | 3 | 476 | 19.06.2018 10:22 SuchSoft | | v Webhosting a servery | 2 | 823 | 11.03.2021 9:47 Jusufs | | v Assembler, C, C++, Pascal, Java | 11 | 525 | 07.07.2010 21:55 hudi1 | | v HTML, XHTML, XML, CSS | 3 | 660 | 05.12.2009 22:13 Ďuri | | v Databázy | 13 | 870 | 01.09.2009 20:10 dessert | | v HTML, XHTML, XML, CSS | 11 | 594 | 11.09.2008 21:05 stenley | | v HTML, XHTML, XML, CSS | 2 | 478 | 28.01.2010 19:30 DARSON | | v PHP, ASP | 2 | 447 | 02.08.2011 11:51 Miko | | v Databázy | 2 | 823 | 22.11.2010 17:43 camo | | v Databázy | 6 | 825 | 01.10.2009 9:38 jtomcik | | v PHP, ASP | 1 | 430 | 17.06.2009 22:26 mienkofax | | v JavaScript, VBScript, Ajax | 4 | 594 | 27.12.2010 11:15 DeeJay3 | | v PHP, ASP | 4 | 709 | 05.08.2009 17:38 rooobertek | | v PHP, ASP | 1 | 615 | 25.02.2007 16:25 m@-nX | | v PHP, ASP | 3 | 403 | 02.03.2009 12:58 jtomcik |
|