22786
Html-, css- és php-help
-
#18462 igaz, de ez hogy kaptam is linket hozzá sokat dobott az ő kommentjén :p nyugi, neked is köszönöm :) -
#18461 Az is js :) -
#18460 js el? azt majd megnezem, de lyukasbogare most nagyon tetszik :) -
#18459 nem "ha nem", hanem "ha van", akkor... -
#18458 ha nincs LIMIT a lekérdezésedben, akkor felesleges újra lekérni a rendezett adatokat, kliensoldalon is lehet rendezni: tablesorter
ha nem, akkor ajax. -
#18457 Javascripttel újra betöltöd az adatokat. Illetve igen, GET-tel szokták. -
#18456 ja várjunk, erre kell a GET nem post ugye? nemvagom -
#18455 kiiratok egy oldalra egy lekerdezest, es vannak gombjaim amiket ha megnyomunk akkor annak megfeleloen rendezi a kiiratas (vagyis a lekerdezesben szerepel order by asd desc, asc stb) es azt hogy tudnam megcsinalni, hogy ezek a gombok formban vannak ami egy masik fajlra mutat(amiben van a switch, hogy hogyan rendezze), de ha ranyomok a gombra akkor ugye oda ugrik a weboldal is. Hogy tudnam megcsinalni, hogy ugyanazon az oldalon maradjak, de valtozzon a kiiratas?
remelem ertheto. -
#18454 szerintem használj PDO-t a "mysql_" kezdetű függvények helyett, illetve gondolkozz el egy openid megoldáson -
#18453 Hello
Úgy alakultak a dolgok, hogy a projekt amin jelenleg még szívességből, nem hivatalosan dolgozunk elég nagyszabásúvá válhat, hamarosan emiatt a cégalapítás ideje is eljöhet.
A kérdésem ennek ellenére technikai jellegű lenne. Mindig is maximalista módon dolgoztam, csak az elvárásoknak tökéletesen megfelelő munkát voltam hajlandó kiadni a kezeim közűl, annak ellenére is, hogy eddig kizárólag non-profit működtem. Most azonban a saját magam felé támasztott elvárások még jobban megnőttek, kiemelt figyelmet szeretnék fordítani a biztonságra, a projekt komolysága megköveteli.
Konkrétan tehát:
-SQL Injection ellen elegendő a mysql_real_escape_string(), vagy még ajánlatos emellé valami? (A form elő-validációkat azért eddig is védtem bizonyos karakterek kézi szűrésével)
-Minimum 8 karakteres jelszó megkövetelése elég, vagy ajánlott kötelezően kis-nagy betű + szám is bele? Kiemelten fontos lenne a felhasználói fiókok védelme, viszont nem szeretném, ha ez a kényelmetlenné tenné a rendszert.
-Milyen tűréshatárral érdemes bruteforce, illetve http-flood védelmet készíteni? A jelenlegi flood védelem ha jól emlékszem 300 (kliensoldalon késleltetett) lekérést enged élő formvalidáció céljából sessionönként, utána IP-t tilt.
-XSS támadások ellen elegendő, ha minden egyes felhasználók számára hozzáférhető beviteli mezőből szűrve vannak a speciális karakterek, illetve a projekt jellemzői miatt lehetőségük sem kell, hogy legyen nyilvános tartalmat kiírniuk?
-Ezeken kívül van még valami, amire érdemes odafigyelni, de nem gondoltam még rá?
-Jól gondolom, hogy egy megfelelően megírt, saját, zárt forrású keretrendszer biztonságosabb, mint egy ismert nyilt forrású? Azért vagyok ezen az állásponton, mert ha megfelelő a külső védelem, akkor a forráskód nem-ismeretének köszönhetően szinte lehetetlen belső sebezhetőségeket találni, ellenben egy open-source frameworkkel, amibe mindenki bele tud nézegetni. -
#18452 Na most én leszek lusta átnyálazni levlistákat, esetleg van aki követi a WebSocket working groupot és van-e arról szó, hogy mennyire közelítenek a protokol véglegesítéséhez? :) -
#18451 Igen tudom, hogy ez igy elég összetetnek irtam, de gondoltam, hogy megoldható valami egyszerü modon is.
EXcelben addig eljutottam hogy azokra a napokra amikor dolgozni kell akkor egy x-et teszek és a végén kiirja hogy hány ora a ledolgozott idö.CSak a kivételeket nem tudom és a feltétel rendszereket hogyan kellene macrozni benne, lévén, hogy a legbonyolultabb amit excelben eddig használtam az a darab fügvény volt. -
#18450 Írjunk árajánlatot?:) -
#18449 Tudna nekem valaki segiteni abban , hogy hogyan lehetne megcsinálni egy olyan táblázatot amiben könnyen lehetne egy honapra elöre megtervezni 24/72-es munkarendnek a beosztását 5 fövel?Figyelembe véve azt is ha nem szabályosan követik egymást a pihenök vagy a munkanapok éstem ezalatt ha szabadságra megy az illetö vagy elöbb kell bejönnie minthogy letellene a 72ora a 2 munkanap között.
természetesen a honap napjait figyelembevéve és összesitést is készitene a 24orás idökrol havi és éves lebontásba.
Remélem hogy nem olyan bonyolult, elösször excelben probálkoztam, ott addig megy is hogy 24/72-re megvan a táblázat, de nem automatikus a kitöltése és a változásokat nem veszi figyelembe. -
#18448 akkor működik. elvileg ha nem működne, akkor a visszatérési érték false lenne, ami 0 és akkor 1970-01-01 01:00:00-et írna ki. vagy azt a beragadt időt, amikor még működött. ehhez már nem értek. -
#18447 Nebassz, kiirja a datumot...
Nem eppen azt az idot ami a windows-omon van de gondolom ez szerver ido lehet, mivel 2001.07.07 07:18:30-kor csekkoltam es kiirta, hogy 2011-07-06 21:57:26.
Akkor ha nem mukodne, akkor nem irna ki semmit?
A sok adat amit kiirt anno:
SPOILER! Kattints ide a szöveg elolvasásához!array(1) {
[0]=>
array(26) {
[0]=>
int(2145)
[1]=>
int(26533889)
[2]=>
int(33188)
[3]=>
int(1)
[4]=>
int(1082)
[5]=>
int(1082)
[6]=>
int(0)
[7]=>
int(271)
[8]=>
int(1309989446)
[9]=>
int(1310019296)
[10]=>
int(1310019296)
[11]=>
int(4096)
[12]=>
int(8)
["dev"]=>
int(2145)
["ino"]=>
int(26533889)
["mode"]=>
int(33188)
["nlink"]=>
int(1)
["uid"]=>
int(1082)
["gid"]=>
int(1082)
["rdev"]=>
int(0)
["size"]=>
int(271)
["atime"]=>
int(1309989446)
["mtime"]=>
int(1310019296)
["ctime"]=>
int(1310019296)
["blksize"]=>
int(4096)
["blocks"]=>
int(8)
}
} -
#18446 Igen. Szerintem onnan lehet tudni, hogy ki van kapcsolva, ha nem azt írja ki, amit kéne :D amúgy egy számot kéne visszaadnia a függvénynek (ami egy timestamp), date()-nek átpasszolod és kiíratod. próbáld ki pl.: echo date('Y-m-d H:i:s', fileatime($_SERVER['PHP_SELF']));
ha ez a mostani idő, akkor működik. szabad tudni, hogy mi az a csomó minden adat, amit kidobott? -
#18445 Szoval, ha nem lenne kikapcsolva, akkor nem kene itt butykolni? Sima PHP-vel kiolvashato?
Honnan tudom, hogy le van tiltva? Ertem ezalatt, hogy amikor meghivtam a fuggvenyt, egy csomo minden adatot kidobott, nem volt kozte amit kerestem? -
#18444 mint mondtam, a hozzáférés ideje fájlrendszer szinten tárolódik, de ha le van tiltva a frissítése, annak semmi köze a php-hez. a fileatime() ki tudja olvasni (már PHP 4 óta), de írja is, hogy
[i]This can be costly performance-wise when an application regularly accesses a very large number of files or directories. Some Unix filesystems can be mounted with atime updates disabled to increase the performance of such applications;[/i]
[apro]tehát erőforrásigényes, és néhány unix fájlrendszernél a csatoláskor ezt ki is kapcsolják, hogy növeljék a teljesítményt. otthon saját gépen ez nem lehet probléma, de szerveren nagy valószínűséggel ki lesz kapcsolva, ezért kell alternatív megoldáshoz folyamodni :][/apro]
örülök, hogy sikerült megoldani, szívesen. -
#18443 Jaaaaaaaaaaaa, hogy menteni kell, az utolso megnyitas idejet, mert csak akkor lehet ellenorizni, hogy mikor volt utoljara megnyitva?
Azt hittem, hogy a PHP 5.*.* verzio mar tart ott, hogy ezt a filebol ki tudja olvasni...
Ezt egy a hatterben futo automatikus scripthez keszitenem ami ellenorzi, hogy ha nem volt az elmult 30 napban hasznalva a kep, akkor torli azt.
Igy mar sikerult megoldanom a file_put_contents() fuggvennyel.
Koszonom. -
#18442 Közben sikerült :P
Main_class.prototype.init_data = function()
{
var obj = this;
$.get('get_data.php?photo_group&photo_all', function(data) {
obj.data = $.evalJSON(data);
processData();
});
processData = function()
{
// TODO: Feldolgozni a beolvasott adatokat
alert(obj.data["photo_group"][0]["title"]);
}
} -
#18441 Gondoltam kipróbálom milyen lehet javascriptben osztályokkal dolgozni, meg is van az első dilemmám:
function Main_class()
{
this.data = 0;
this.init_data();
}
Main_class.prototype.init_data = function()
{
$.get('get_data.php?photo_group&photo_all', function(data) {
parent.data = $.evalJSON(data);
});
alert(this.data)
}
Onnan a $.get complete funkciójából hogyan szokás szakszerűen kimenteni az adatot úgy hogy a Main osztály data változója eltárolja a lekérés visszatérési értékét? this-el nem tudok rá hivatkozni és parentel sem :/ -
#18440 köszi ! -
#18439 Én pedig így használom:
<?php
function myConnect() {
/**************************************** SETTINGS */
$link = NULL;
$dbhost = "localhost";
$dbusername = "";
$dbuserpass = "";
$dbname = "";
/************************************************* */
if (!$link) $link = mysql_connect($dbhost, $dbusername, $dbuserpass); //endif
if (!$link) { return 0; } //Kiszolgáló hiba
elseif (!mysql_select_db($dbname)) { return 0; } //Adatbázis hiba
else { mysql_query('SET NAMES UTF8', $link); return $link; } //endif
};
?>
-
#18438 Vagy akár már a config.php-ban is csatlakozhatsz végül is, az is egy fix dolog, illetve az utolsó előtti szó adatbázis, nem tábla, kell majd egy szerkesztés nekem :D
Amúgy itt egy példa: http://pastebin.com/Tijug0ci
az a set utf-8 nem muszáj, de én csak így tudtam elérni, hogy jól rakja be az ékezetes betűket is :/ -
#18437 Csinálsz egy config.php-t ahova beírod ami kell ($host,$pw,$db,$user...)
Utána csinálsz mondjuk egy functions.php-t ahova rakod a függvényeidet és ennek az elejére egy require("config.php"); és itt a functions.php elején megcsinálod az SQL csatlakozást és utána ezt elég beincludeolni / requirelni bármilyen oldal elején és tudsz már SQL lekérdezéseket futtatni. Illetve, ha feltöltöd tárhelyre elég a config.php-t átírni.
Amúgy arra gondoltam, hogy a mylsq_query("...."); elég, nem kell mellé a $con, ha csak egy táblát használsz. -
#18436 Mert kliens oldalon akarsz szerveroldali függvényt hívni.
Tedd az oldal tetejére egy feltételbe - if (isset(insert)) - az SQL parancsot, onclick-en pedig:
document.location.href='aktualis_oldal.php?insert'; -
#18435 és php kód nem lehet? nem akarok ennek az 5 sornak is új fájlt... de ha így nem megy akkor oké...
hogy érted hogy felesleges? én eddig úgy csináltam, hogy minden php fájl elején meghatároztam hogy hova csatlakozzon. mondjuk akartam is kérdezni, hogy meg lehet e csinálni azt, ha mondjuk felteszem tárhelyre a fájlokat akkor csak egy helyen írjam át a csatlakozási adatokat, vagy minden fájl elején írjam majd át... -
#18434 Az onclick-be valami javascript kód kéne. Amúgy ha össz-vissz egy adatbázishoz csatlakozol, akkor felesleges kirakni a $con-t mindenhova. -
#18433 bocs, mov2 nél a pasd meg a SELECT egybement, de most véletlenül. a lényeg miért nem fut le a két lekérdezés gombnyomásra. -
#18432 van egy gombom:
<input type="button" onclick="veglegesites()" value="szöveg" />
és utána a php kód:
<?php
function veglegesites()
{
$con = ...
$mov1="INSERT INTO kasd SELECT * FROM kkasd";
$mov2="INSERT INTO pasdSELECT * FROM ppasd";
mysql_query($mov1,$con) or die('Error: ' . mysql_error());
mysql_query($mov2,$con) or die('Error: ' . mysql_error());
}
mysql_close($con);
?>
megnyomom a gombot, megnézem phpMyadmin ban történte valami, de semmi. lefuttatom ott a mov1et, és tökéletesen működik. MIÉÉRT? -
#18431 Codepage Converter esetleg, bár autómata encoding felismerés azthiszem nincs benne.
Ez meg egy sebtiben összedobott php script, csak saját felelősségre! :)
class, példa -
#18430 Ouch csak nem jó.. :S
mysql_query("UPDATE `fights` SET `end` = CASE WHEN ( SELECT
(`user1` = `1`) + (`user1` = `2`) + (`user1` = `3`) + (`user1` = `4`)+ (`user1` = `5`)+ (`user1` = `6`)+ (`user1` = `7`)+ (`user1` = `8`)+ (`user1` = `9`)+ (`user1` = `10`)+ (`user1` = `11`)+ (`user1` = `12`) + (`user1` = `13`) < (`user2` = `1`) + (`user2` = `2`) +(`user2` = `3`)+(`user2` = `4`)+(`user2` = `5`)+(`user2` = `6`)+(`user2` = `7`)+(`user2` = `8`)+(`user2` = `9`)+(`user2` = `10`) + (`user2` = `11`) +(`user2` = `12`) + (`user2` = `13`) ) THEN `user1` ELSE `user2` WHERE `id` = 1 END "); -
#18429 Bocsi semmi, csak a WHERE lemaradt!
Köszi mind kettőtöknek :) -
#18428 mysql_query("UPDATE `fights` SET `end` = CASE WHEN ( SELECT
(`user1` = `1`) + (`user1` = `2`) + (`user1` = `3`) + (`user1` = `4`)+ (`user1` = `5`)+ (`user1` = `6`)+ (`user1` = `7`)+ (`user1` = `8`)+ (`user1` = `9`)+ (`user1` = `10`)+ (`user1` = `11`)+ (`user1` = `12`) + (`user1` = `13`) > (`user2` = `1`) + (`user2` = `2`) +(`user2` = `3`)+(`user2` = `4`)+(`user2` = `5`)+(`user2` = `6`)+(`user2` = `7`)+(`user2` = `8`)+(`user2` = `9`)+(`user2` = `10`) + (`user2` = `11`) +(`user2` = `12`) + (`user2` = `13`) ) THEN `user1` ELSE `user2` END ");
Ezzel működik, ám ha > akkor 'barta' ha < akkor 'mate'.. -
#18427 ha nincs mentve az utolsó hozzáférés ideje fájlrendszer szinten, akkor azt nem is fogod tudni használni sehogy. egyáltalán másik képből generálsz képet, vagy a semmiből? mihez akarod hozzáfűzni, hogy mikor nézték meg?
ha lemezen van a fájl, akkor:
$filename = 'elérési/út/a/fájlodhoz';
$mimetype = 'mime/típus'; // image/jpeg, vagy image/png vagy image/gif attól függően, hogy mit szolgálsz ki
file_put_contents($filename . '.txt', time());
header('Content-Type: '.$mimetype );
echo readfile($filename);
ha generálod a képet, akkor csak a file_put_contents sor a lényeges neked. ez a megadott fájlba írja a megadott adatot. -
bracsek #18426 Persze a where ben össze kellett volna kötni, de nincs kedvem létrehozni a táblát így meg csak ötletet adtam, nem bonyolult megoldani, ha kicsit kísérletezel.
SQL ben minden van amit el tudsz képzelni, és amit nem az is, nem csodálkoznék ha mondjuk kerülne egy őrült aki a mariót megírná mysqlben :) olyan szinten hozzá férhet vajon a mysql az erőforrásokhoz, képernyő... billentyűzet? :D érdekes felvetés. -
#18425 Esetleg próbáld meg felzárójelezni < előtti és után részt vagy where id = 1-et hozzáadni mindkettő lekérdezéshez. csak tipp, eddig nem is tudtam, hogy van case SQL-ben -
#18424 mysql_query("UPDATE `fights` SET `end` = CASE WHEN ( SELECT
(`user1` = `1`) + (`user1` = `2`) + (`user1` = `3`) + (`user1` = `4`)+ (`user1` = `5`)+ (`user1` = `6`)+ (`user1` = `7`)+ (`user1` = `8`)+ (`user1` = `9`)+ (`user1` = `10`)+ (`user1` = `11`)+ (`user1` = `12`) + (`user1` = `13`) < (`user2` = `1`) + (`user2` = `2`) +(`user2` = `3`)+(`user2` = `4`)+(`user2` = `5`)+(`user2` = `6`)+(`user2` = `7`)+(`user2` = `8`)+(`user2` = `9`)+(`user2` = `10`) + (`user2` = `11`) +(`user2` = `12`) + (`user2` = `13`) FROM `fights` WHERE 1 ) THEN `user1` ELSE `user2` END");
Sajnos így sem ír be semmit :( -
bracsek #18423 THEN `user1` ELSE `user2` END
ezt a részt lehagytad a végéről? a ;t te írtad.