ugrás a tartalomhoz

Archívum - 140703 - Fórum téma

november 21

javascript objektum orientált kód próbája

kamba · 2009. Nov. 21. (Szo), 00.29
sziasztok.
A probléma a következő.

Felhasználó azonosítás - Alapszintű biztonság

whiteman0524 · 2009. Nov. 21. (Szo), 00.15
Üdv !

Ennél jobb címet sajnos nem igazán tudtam kitalálni :) Tehát most konkrét tapasztalatokra lennék kíváncsi a felhasználó azonosítás terén. Nekem eddig ez volt a "jól bevált" és nem túl bonyolult módszerem :

1. Sikeres Bejelentkezésnél session_start(); indítása, majd a felhasználónév - jelszó páros és az aktuális idő tárolása mondjuk a $_SESSION['name'], $_SESSION['pass'], és a $_SESSION['time'] változóban.

2. Minden egyes tevékenységnél, tehát ami az oldal frissítésével jár meghívódik például a következő függvény vagy valami ilyesmi :

function loginValidate(){
  session_start();
  // Ha léteznek a változók...
  if(isset($_SESSION['name']) && isset($_SESSION['pass']) && isset($_SESSION['time'])){
    // Ha létezik a felhasználónév - jelszó páros és nem járt még le a 10 perc...
    if(ifUser($_SESSION['name'], $_SESSION['pass']) && (time() - $_SESSION['time'] < 600)){
      // Akkor az idő frissítése és az id újragenerálása hogy kicsit biztonságosabb legyen
      $_SESSION['time'] = time();
      session_regenerate_id();
    } else {
      // Különben destroy, és mehet vissza a bejelentkezéshez
      session_destroy();
      header('Location: login.php');
      exit();
    }
  } else {
    // Különben mehet vissza a bejelentkezéshez
    header('Location: login.php');
    exit();
  }
}
3. És akkor ennyi...lenne...

Biztosan irtó gyenge megoldás, és legalább 236987 sebből vérzik ezért érdekelne hogy hogyan kéne ezt szakszerűbben csinálni, (feltételezve hogy lehet jobban is) ? :)

A válaszokat előre is köszönöm :)
 

november 20

Új, Ajaxal hívott html oldalon nem működik a javascript

PHPprogramozo · 2009. Nov. 20. (P), 18.06
Sziasztok!

Adott egy php script, ami egy html kimenetet ad. Ebbe a html kimenetbe tettem bele egy gombot, amit rákötöttem egy ajax hívásra. Eddig ez tiszta sor, mint ahogy egy normál oldalnak működnie kell, műxik ez is.

Ajax segítségével meghívok szintén egy php-t, tulképpen így postolok adatokat majd a php kimenetét beleírom az oldalba az ajax hívás végén. Ez is megy.

Ami nem megy és kezdek megőrülni tőle..:

Az Ajax hívás során a php generált egy html-t. Ebbe tettem egy ilyen js-t.

... html további részek
<script type='text/javascript'>
alert('mukodj');
</script>
... html további részek

Nohh a bajom az hogy a kód köré épülő html elemek csodásan lefutnak, megjelennek a szövegek meg minden, de ez a javascript semmi pénzért nem műxik. Tudnátok ebben segíteni, hogy miért lehet ez? Nem vagyok egy nagy JS mágus és itt elakadtam.

Köszi előre is!
 

replace()

newyorkerboy · 2009. Nov. 20. (P), 16.22
Sziasztok!
Adott a lent található kód, mellyel e-mail címeket szeretnék kódolni, nyilván nem számokkal, ahogy a példában van, de így tűnt ki, hogy mi is a gond. A @ karakter dekódolásánál nem cseréli le a jelet "27."-ről magára a jelre. Keresgéltem itt-ott, de nem találtam, hogy miért van ez, talán ti tudtok segíteni.

<script>
var eredeti=new Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","\@");
var kodolt=new Array("01.","02.","03.","04.","05.","06.","07.","08.","09.","10.","11.","12.","13.","14.","15.","16.","17.","18.","19.","20.","21.","22.","23.","24.","25.","26.","27.");

function coder(str){
for(var i=0;i<=str.length;i++){
str=str.replace(eredeti[i],kodolt[i],"g");}
document.write(str);}

function decoder(str){
for(var i=0;i<=str.length;i++){
str=str.replace(kodolt[i],eredeti[i],"g");}
document.write(str);}

coder("valami##kukac##valami.hu");
decoder("22.01.12.01.13.09.27.22.01.12.01.13.09..08.21.");
</script>
 

Függvényből való kilépés, visszalépés.. lehetséges? (php5.x)

EL Tebe · 2009. Nov. 20. (P), 15.02
Sziasztok!

Van egy függvényem, azon belül - sokminden más mellett - egy tömböt feltöltő ciklus.

Ez a tömb 30-50 MBytenyira is simán meghízik, így elérem a max memória-korlátot és lehal a progi.

A címben látható dologra gondoltam, azonban nem tudom hogyan lehet megvalósítani :(
X elemenként a függvény kidobná az addigi eredményt, majd a tömböt törölném és egy újba kezdenék belepakolni.

Tehát szeretnék valamilyen úton-módon visszakerülni a ciklusba (és az azt tartalmazó függvénybe) és folytatni azt.

Ötletek?
Vagy rossz az elgondolás is?
 

november 19

css fájlok - kimaradt mértékegység méretezésnél

mikroman · 2009. Nov. 19. (Cs), 16.34
Sziasztok!

Ha egy css fájlban a méret megadásánál kimarad a mértékegység és az érték nem nulla, akkor ez mivel jár? Lassíthatja ez a lap betöltését ami ezt használja például Internet Explorernél? Esetleg az ilyen hibás bejegyzéseket valami "default" mértékegységgel használja?
pl main.css-ben:
padding:20;
top:20;

Köszi!
Mikroman
 

Partner programhoz banner követéses rendszer

stan · 2009. Nov. 19. (Cs), 14.36
Saját készítésű php-mysql alapú weboldalamhoz szeretnék készíteni egy partner-programot (angol nevén affiliate program). Lényege, hogy regisztrációkor meg lehet adni a "Partner azonosító" mezőben egy azonosító számot, és ha valaki így regisztrál, akkor a beírt "Partner azonosító"-val rendelkező ember alá regisztrál be. Ha ez az új regisztráló az oldalamon vásárol, akkor a megadott partner ezért jutalékot kap. Ha én pl. ajánlom személyesen egy ismerősömnek az oldalt, és leírom neki egy cetlire a kódomat, hogy regisztrációkor ezt ne felejtse el megadni, akkor természetesen probléma nélkül működik a dolog.

Az elképzelés úgy bonyolódik, hogy ezt a rendszert szeretném kiegészíteni egy banner követéses alrendszerrel. Ennek lényege, hogy ha a felhasználót érdekli a partner-program, és van neki egy vagy több weboldala, akkor kitehesse a banneremet, és aki ezen keresztül jut el az oldalra és regisztrál, az automatikusan az ő partnere.

Ötletem az, hogy először is a felhasználónak meg kell adnia azokat a célwebdolalakat, amelyekre szeretné kirakni a bannereimet. Ezeket a weboldalakat átnézem, mielőtt engedélyezném a megjelenést, mert nekem fontos, hogy igényes oldalakon jelenjenek meg a hirdetéseim, és holmi pornó, warez, dj haknijancsi oldalán ne jelenhessen meg partner program szinten, mert az rontja az én márkanevemet. Amint elfogadtam a webcímeket fontos, hogy csak az innen érkező felhasználók legyenek a weboldal tulajdonos automatikus partnerei, az előbb taglalt szerkesztési irányelvek miatt.

Programozás szempontjából úgy oldanám meg, hogy miután elfogadtam az általa beküldött célweboldalakat, publikálnám számára a megfelelő HTML kódot, amit beilleszthet az oldalára. Ez egy képlink-ből áll, amely megjelenít egy általa választott bannert a lehetőségek közül, tehát az én weboldalam /banners mappájából jelenítené meg a képet az ő weboldalán. A képre kattintva eljuthatunk az én saját weboldalamra egy GET kiegészítéssel, amely tartalmazza a tulajdonos azonosítóját.

mod_rewrite

mgergo90 · 2009. Nov. 19. (Cs), 12.50
Sziasztok,

Van egy .htaccess fájl:

DirectoryIndex valami.php
RewriteEngine on
RewriteBase /weboldal/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ valami.php?rewrite=$1 [QSA]

Egy hivatkozás így néz ki: <a href="foldal/aloldal">Link</a>
ez a böngészőben így jelenik meg: http://www.mydomain.hu/weboldal/foldal/aloldal

Ha ismét rákatintok a linkre akkor:
http://www.mydomain.hu/weboldal/fooldal/fooldal/aloldal

Újabb kattintásra:

http://www.mydomain.hu/weboldal/fooldal/fooldal/fooldal/aloldal

Ez miért van?

Köszönettel:
Gergő
 

Php- függvény hívása a megadott kontextusban

inf · 2009. Nov. 19. (Cs), 01.20
Sziasztok!

Egy függvényt szeretnék meghívni egy objektum kontextusában, vagy átadni neki másik kontextusból adatot.
(kontextus=scope, jobb fordítást nem találtam)

Egyelőre az egyedüli működő megoldás a $GLOBALS használata, ill. php4 alatt létezik olyan, hogy aggregate, viszont nekem php5-ös megoldásra van szükségem.

Tud valaki ilyet?
 

november 18

Debian apache2 virtual host name gond

carstepPCE · 2009. Nov. 18. (Sze), 14.37
Sziasztok,

felallitottam egy debian 5 rendszert, ahol mindent feltelepitettem es beallitottam, de egy valamivel nem tudok dulore jutni espedig a kovetkezo.

Van egy beallitott apache2.2 server egy virtualhostname -mel az apache2ctl -S opcioval elvileg lathato (bar ez csak script fajl szintaxis ellenorzes, de elvileg jo). A sites-enabled konyvtarban talalhato fajlban (symlink) a kovetkezo van

<VirtualHost *:80>
ServerAdmin bolla.sandor##kukac##*******.com
ServerName deployserver.local
ServerAlias *.deployserver.local
DocumentRoot /home/deploy/public_html/
<Directory /home/deploy/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
</Directory>
ErrorLog /home/deploy/logs/error.log
LogLevel warn
CustomLog /home/deploy/logs/access.log combined
ServerSignature Off
</VirtualHost>
az oldal elerheto a bongeszobol a localhost/~deploy/ eleresi uttal, de a deployserver.local eleresi uttal nem. A szerver ip cime es a kivant host name hozza van adva a kliens gepen a host fajlhoz.

Sokat kerestem a neten, de lehet mar tul sokat agyaltam rajta es nem latom a fatol az erdot :-)

A kerdesem az lenne, hogy mit kellene megnezem, leellenoriznem, hogy helyesen van e irva?

Koszonettel
Sanyi