Archívum - Feb 2008
február 18
PHP-FCGI elszabadul
Sziasztok,
egy olyan problémával állok szemben, hogy a Weblaboros cikk szerint felkonfigurált webszerver néhány processze elszabadul és kb 6-7 órás process időket produkál, amitől a monit természetesen azonnal újraindítja a webszervert.
Az érdekes az, hogy a FastCGIConfig-ban meg van adva a killInterval 300, ennek ellenére nem gyilkolja le.
Hogy tudnám lekövetni a probléma okát?
Köszi
J
■ egy olyan problémával állok szemben, hogy a Weblaboros cikk szerint felkonfigurált webszerver néhány processze elszabadul és kb 6-7 órás process időket produkál, amitől a monit természetesen azonnal újraindítja a webszervert.
Az érdekes az, hogy a FastCGIConfig-ban meg van adva a killInterval 300, ennek ellenére nem gyilkolja le.
Hogy tudnám lekövetni a probléma okát?
Köszi
J
Értékátadás PHP - HTML - PHP
Sziasztok!
Egy PHP oldalba ágyazok be egy webformot.
A feladat:
Egy meghatározott link, vagy terméknév (a php oldalról) továbbítása egy webformon keresztül a 3. php állománynak (mail fgv) termékoldala.php -> webform.html -> sendform.php
Egész pontosan:
Egy ingatlan nevének vagy linkjének továbbítása egy hiteligénylés mellé automatikusan, hogy az emailt megkapó illető tuja melyik ingatlanra érkezett az igénylés (persze html oldal a webform).
Amennyiben van ötletek, osszátok meg velem, hogyan lehetne megoldani ezeket az értékátadásokat.
Köszönöm!
Üdv
M
■ Egy PHP oldalba ágyazok be egy webformot.
A feladat:
Egy meghatározott link, vagy terméknév (a php oldalról) továbbítása egy webformon keresztül a 3. php állománynak (mail fgv) termékoldala.php -> webform.html -> sendform.php
Egész pontosan:
Egy ingatlan nevének vagy linkjének továbbítása egy hiteligénylés mellé automatikusan, hogy az emailt megkapó illető tuja melyik ingatlanra érkezett az igénylés (persze html oldal a webform).
Amennyiben van ötletek, osszátok meg velem, hogyan lehetne megoldani ezeket az értékátadásokat.
Köszönöm!
Üdv
M
A változók hatóköre
Sziasztok!
A kérdésem a lenne, hogy, ha egy függvényen kívül létrehozott változót függvényen belül is el akarok érni, akkor mit kell tennem? A PHP-ben egy 'global' utasítás való erre, de a JavaScript-ben nem tudom, hogy hogyan kell. A másik, hogy, ha egy függvényben létrehozok egy változót, akkor hogyan kell 'return' használata nélkül függvényen kívül is használhatóvá tenni? Ennek a PHP-s megoldása is érdekelne!
Előre is köszönök minden segítséget!
■ A kérdésem a lenne, hogy, ha egy függvényen kívül létrehozott változót függvényen belül is el akarok érni, akkor mit kell tennem? A PHP-ben egy 'global' utasítás való erre, de a JavaScript-ben nem tudom, hogy hogyan kell. A másik, hogy, ha egy függvényben létrehozok egy változót, akkor hogyan kell 'return' használata nélkül függvényen kívül is használhatóvá tenni? Ennek a PHP-s megoldása is érdekelne!
Előre is köszönök minden segítséget!
Windows-os PHP futatás fastcgi módban
Sziasztok,
a segítségeteket szeretném kérni a következőkben:
Windowsos platformon szeretném a php-t fastcgi módban futtatni. Sehogy sem bírok rájönni hogyan is megy ez. Találtam pár doksit a neten, de nem működik velük. És ez mit is jelent tulajdonképp, minden weboldalnak külön php.ini-je lehet?
Tehát ha valakinek megy win alatt a fenti dolog akkor kérem segítsen már egy kicsit.
Köszi!
Üdv.
■ a segítségeteket szeretném kérni a következőkben:
Windowsos platformon szeretném a php-t fastcgi módban futtatni. Sehogy sem bírok rájönni hogyan is megy ez. Találtam pár doksit a neten, de nem működik velük. És ez mit is jelent tulajdonképp, minden weboldalnak külön php.ini-je lehet?
Tehát ha valakinek megy win alatt a fenti dolog akkor kérem segítsen már egy kicsit.
Köszi!
Üdv.
február 18
Left join problema
Van harom mySQL tablam (category, products es prod2cat):
Category:
Products:
Prod2Cat:
Milyen mySQL lekeresel tudnam kilistazni peldaul az oszes aru nevet (products) amely a 2-es kategoriaban van ?
Koszonom!
■ Category:
id | name
==================
1 | computers
2 | mp3 players
3 | camera
==================
1 | computers
2 | mp3 players
3 | camera
Products:
id | name |
=================
1 | Ipod
2 | Nikon camera
=================
1 | Ipod
2 | Nikon camera
Prod2Cat:
prodid | catid
===============
1 | 2
2 | 3
===============
1 | 2
2 | 3
Milyen mySQL lekeresel tudnam kilistazni peldaul az oszes aru nevet (products) amely a 2-es kategoriaban van ?
Koszonom!
Nevezéktan, többnyelvűség
sziasztok,
egy többnyelvű webes rendszert fejlesztek,
a gombok, formok, stb. amik nyelv függő részek nyelvi file-ból jönnek.
Azt szeretném megkérdezni tud-e valaki leírást, vagy valami specifikációt hogy
hogyan érdemes készíteni nevezéktant több nyelvű rendszerhez.
pl.:
login_btn = 'Belépés';
Előre is köszönöm.
■ egy többnyelvű webes rendszert fejlesztek,
a gombok, formok, stb. amik nyelv függő részek nyelvi file-ból jönnek.
Azt szeretném megkérdezni tud-e valaki leírást, vagy valami specifikációt hogy
hogyan érdemes készíteni nevezéktant több nyelvű rendszerhez.
pl.:
login_btn = 'Belépés';
Előre is köszönöm.
Form adatainak küldése PHP-vel, oldalfrissítés nélkül
Egy relatív összetett problémával találtam magam szemben:
Egy apróhirdetés-beküldő és -kilistázó modult kell összehozni, oly módon, hogy JS/CSS megoldással tabokat hoztam létre és egy ChangeTab() nevű függvénnyel váltom azokat, természetesen gond nélkül működik (alapból a kilistázás jelenik meg).
Ezen felül a beküldés tabon értelemszerűen van egy form, ami submit gombra elvileg egy php-nek kéne, hogy elküldje az adatokat, majd kiírná egy div-ben (vagy akár a form helyett - részletkérdés), hogy sikerült az elküldés. Erre ajaxos (prototype.js) megoldást találtam, kipróbáltam egy üres oldalon, működik.
Viszont amikor már implementálom a tabos keretbe, gombnyomás után újra betöltődik az egész oldal, azzal, hogy az eredeti index.php?lg=hu cím átalakul index.php?# címre (action="#"), és nem ír ki semmit az adott div-ben.
Ő a kód:
[code]
<div id="TabLista" style="display:block;">
<div class="apro_empty"><a href="javascript:"> </a></div>
<div class="apro_on"><a href="javascript:ChangeTab('Lista')">apróhirdetések</a></div>
<div class="apro_off"><a href="javascript:ChangeTab('Bekuld')">beküldés</a></div>
</div>
<div id="TabBekuld" style="display:none;">
<div class="apro_empty"><a href="javascript:"> </a></div>
<div class="apro_off"><a href="javascript:ChangeTab('Lista')">apróhirdetések</a></div>
<div class="apro_on"><a href="javascript:ChangeTab('Bekuld')">beküldés</a></div>
</div>
<div class="apro_main" id="ContentLista">
bla bla
</div>
<div class="apro_main_none" id="ContentBekuld">
<form action="#" id="formBekuld">
<center>Minden mező kitöltése kötelező!</center>
<table>
<tr><td class="apro_td">Név:</td><td><input type="text" id="apro_nev" size="11" /></td></tr>
<tr><td class="apro_td">E-mail:</td><td><input type="text" id="apro_mail" size="11" /></td></tr>
<tr><td class="apro_td">Tel.:</td><td><input type="text" id="apro_tel" size="11" /></td></tr>
Egy apróhirdetés-beküldő és -kilistázó modult kell összehozni, oly módon, hogy JS/CSS megoldással tabokat hoztam létre és egy ChangeTab() nevű függvénnyel váltom azokat, természetesen gond nélkül működik (alapból a kilistázás jelenik meg).
Ezen felül a beküldés tabon értelemszerűen van egy form, ami submit gombra elvileg egy php-nek kéne, hogy elküldje az adatokat, majd kiírná egy div-ben (vagy akár a form helyett - részletkérdés), hogy sikerült az elküldés. Erre ajaxos (prototype.js) megoldást találtam, kipróbáltam egy üres oldalon, működik.
Viszont amikor már implementálom a tabos keretbe, gombnyomás után újra betöltődik az egész oldal, azzal, hogy az eredeti index.php?lg=hu cím átalakul index.php?# címre (action="#"), és nem ír ki semmit az adott div-ben.
Ő a kód:
[code]
<div id="TabLista" style="display:block;">
<div class="apro_empty"><a href="javascript:"> </a></div>
<div class="apro_on"><a href="javascript:ChangeTab('Lista')">apróhirdetések</a></div>
<div class="apro_off"><a href="javascript:ChangeTab('Bekuld')">beküldés</a></div>
</div>
<div id="TabBekuld" style="display:none;">
<div class="apro_empty"><a href="javascript:"> </a></div>
<div class="apro_off"><a href="javascript:ChangeTab('Lista')">apróhirdetések</a></div>
<div class="apro_on"><a href="javascript:ChangeTab('Bekuld')">beküldés</a></div>
</div>
<div class="apro_main" id="ContentLista">
bla bla
</div>
<div class="apro_main_none" id="ContentBekuld">
<form action="#" id="formBekuld">
<center>Minden mező kitöltése kötelező!</center>
<table>
<tr><td class="apro_td">Név:</td><td><input type="text" id="apro_nev" size="11" /></td></tr>
<tr><td class="apro_td">E-mail:</td><td><input type="text" id="apro_mail" size="11" /></td></tr>
<tr><td class="apro_td">Tel.:</td><td><input type="text" id="apro_tel" size="11" /></td></tr>
Képfeltöltés, valódi mime lekérdezése
Egy képfeltöltős működésben user hibajelzés során futottam bele a problémába.
Az alábbi ellenőrzéseket végzem:
- a $_FILES tömbből megnézem a fájl kiterjeszést, csak az elvárt (.jpg) lehet,
- a $_FILES tömbből nézem a böngésző által küldött mime típust csak az elvárt lehet,
- összevetem a $_FILES és a temp. képfájlról getimagesize() által kapott mime típusokat, egyezniük kell,
- és a további ellenőrzések...
Képfeltöltési hibát jeleztek, a hibás képfájlból nem jött létre tumbkép sem. A fájlt megnyitva az egy szokvány weboldal forrása volt jpg kiterjesztésű fájlban.
A hiba vizsgálata során magam lementettem az editorban egy html oldalt test.jpg néven, ezt feltöltve a $_FILES tömbben image/jpeg volt és a getimagesize() fv. is ezt adta vissza a temp képre. Így a fenti szűrések ki vannak játszva, azaz biztonsági rés maradt, csak az nem tölt fel hekkelt "képet", ami nem akar.
Kérdésem:
Hogyan lehet egy feltöltött fájlről megbízhatóan megtudni a mime típusát - azaz, hogy valóban képfájlról (jpg, gif, vagy png) van-e szó?
Utánanéztem, itt találtam megoldást de a szükséges PHP függvények (PECL) nincsenek mindig ott a tárhelyeken.
Másik megoldásként az exif_imagetype() fv-t ajánlják, de ez sem érhető mindenhol el.
Egyelőre gyorsjavítást végeztem - a helyére másolás után a fájlt kiolvasva keresek benne html, vagy script kódokra jellemző stringrészeket - de ez suszter megoldás.
Köszönettel várom a tippeket, ill. az ötletadó linkeket.
■ Az alábbi ellenőrzéseket végzem:
- a $_FILES tömbből megnézem a fájl kiterjeszést, csak az elvárt (.jpg) lehet,
- a $_FILES tömbből nézem a böngésző által küldött mime típust csak az elvárt lehet,
- összevetem a $_FILES és a temp. képfájlról getimagesize() által kapott mime típusokat, egyezniük kell,
- és a további ellenőrzések...
Képfeltöltési hibát jeleztek, a hibás képfájlból nem jött létre tumbkép sem. A fájlt megnyitva az egy szokvány weboldal forrása volt jpg kiterjesztésű fájlban.
A hiba vizsgálata során magam lementettem az editorban egy html oldalt test.jpg néven, ezt feltöltve a $_FILES tömbben image/jpeg volt és a getimagesize() fv. is ezt adta vissza a temp képre. Így a fenti szűrések ki vannak játszva, azaz biztonsági rés maradt, csak az nem tölt fel hekkelt "képet", ami nem akar.
Kérdésem:
Hogyan lehet egy feltöltött fájlről megbízhatóan megtudni a mime típusát - azaz, hogy valóban képfájlról (jpg, gif, vagy png) van-e szó?
Utánanéztem, itt találtam megoldást de a szükséges PHP függvények (PECL) nincsenek mindig ott a tárhelyeken.
Másik megoldásként az exif_imagetype() fv-t ajánlják, de ez sem érhető mindenhol el.
Egyelőre gyorsjavítást végeztem - a helyére másolás után a fájlt kiolvasva keresek benne html, vagy script kódokra jellemző stringrészeket - de ez suszter megoldás.
Köszönettel várom a tippeket, ill. az ötletadó linkeket.
február 16
PHP-ben egy eseményre több javascript függvény hívása
Sziasztok! Pl. OnFocus eseményre szeretnék több javascript függvényt felsorolni PHP-ben.
Ezek a függvények további bonyolúltabb PHP kódokat hívnak POS vagy GET.
Szépen le is futnak sorjában Firefox alatt, ha me van kapcsolva a firebug.
Ha ki van kapcsolva, csak az első függvényt hajtja végre. Explorerben is csak az elsőt.
Ha közéjük teszek alert(1) stb... tehát így:
Akkor minden böngészőben végrehajtja az összes függvényt, firebug bekapcsolás nélül is.
Esetleg valami várakoztató függvényt kell az alert() helyére írni?
Mi ennek a normális megoldása, vagy szintaktikája?
■ ....
OnFocus=\"func1('parameterek', 'POS');
func2('parameterek', 'GET');
func3('parameterek', 'GET');\"
....
OnFocus=\"func1('parameterek', 'POS');
func2('parameterek', 'GET');
func3('parameterek', 'GET');\"
....
Ezek a függvények további bonyolúltabb PHP kódokat hívnak POS vagy GET.
Szépen le is futnak sorjában Firefox alatt, ha me van kapcsolva a firebug.
Ha ki van kapcsolva, csak az első függvényt hajtja végre. Explorerben is csak az elsőt.
Ha közéjük teszek alert(1) stb... tehát így:
....
OnFocus=\"func1('parameterek', 'POS');alert(1);
func2('parameterek', 'GET');alert(2);
func3('parameterek', 'GET');\"
....
OnFocus=\"func1('parameterek', 'POS');alert(1);
func2('parameterek', 'GET');alert(2);
func3('parameterek', 'GET');\"
....
Akkor minden böngészőben végrehajtja az összes függvényt, firebug bekapcsolás nélül is.
Esetleg valami várakoztató függvényt kell az alert() helyére írni?
Mi ennek a normális megoldása, vagy szintaktikája?
Mysql karakterkódolás egyeztetés.
Gondolom már kicsit unalmas a téma, de Én sajnos nem jövök rá hol a hiba.
Az oldalak PHP-ban írodtak, mindegyik oldalban szerepel a <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> meta tag, az oldalak nem tartalmaznak BOM-ot.
A PHP verziója Version 5.2.5, default_charset: no value/ no value
A Mysql Verziója: Szerver verzió: 5.1.23
Karakter paraméterek:
character set client utf8
(Globális változó) latin1
character set connection utf8
(Globális változó) latin1
character set database latin1
character set filesystem binary
character set results utf8
(Globális változó) latin1
character set server latin1
character set system utf8
collation connection utf8_general_ci
(Globális változó) latin1_swedish_ci
collation database latin1_swedish_ci
collation server latin1_swedish_ci
A webszerver ISS.
Az adat felvitelkor a Mysqlben ÃrvìztűrÅ‘tüköfúrógép szerpel az Árvíztűrő tükörfúrógép helyet. (vagyis nem éppen helyesen ábrázolódik )
Ha a kapcsolat létrehozásakor a PHP-ba beírom, hogy
$k = "SET NAMES UTF8";
mysql_query($k);
Akkor a Mysql-ben is helyesen jelenik meg.
Nemrég telepítettem egy Wordpresst, és nem tüztem be a wp-db.php-ba a fenti két sort, aminek a következménye a ÃrvìztűrÅ‘tüköfúrógép tárolási mód. A honlapon nem venni semmit belőle észre, de a Html Validatort kiakasztja.
Az lenne a kérdésem, hogy a fenti beállítás mellett még miért szűkséges a
$k = "SET NAMES UTF8";
mysql_query($k); beillesztése?
Mit kéne még konfigurálni, hogy a fenti két sort ne keljen alkalmazni.
■ Az oldalak PHP-ban írodtak, mindegyik oldalban szerepel a <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> meta tag, az oldalak nem tartalmaznak BOM-ot.
A PHP verziója Version 5.2.5, default_charset: no value/ no value
A Mysql Verziója: Szerver verzió: 5.1.23
Karakter paraméterek:
character set client utf8
(Globális változó) latin1
character set connection utf8
(Globális változó) latin1
character set database latin1
character set filesystem binary
character set results utf8
(Globális változó) latin1
character set server latin1
character set system utf8
collation connection utf8_general_ci
(Globális változó) latin1_swedish_ci
collation database latin1_swedish_ci
collation server latin1_swedish_ci
A webszerver ISS.
Az adat felvitelkor a Mysqlben ÃrvìztűrÅ‘tüköfúrógép szerpel az Árvíztűrő tükörfúrógép helyet. (vagyis nem éppen helyesen ábrázolódik )
Ha a kapcsolat létrehozásakor a PHP-ba beírom, hogy
$k = "SET NAMES UTF8";
mysql_query($k);
Akkor a Mysql-ben is helyesen jelenik meg.
Nemrég telepítettem egy Wordpresst, és nem tüztem be a wp-db.php-ba a fenti két sort, aminek a következménye a ÃrvìztűrÅ‘tüköfúrógép tárolási mód. A honlapon nem venni semmit belőle észre, de a Html Validatort kiakasztja.
Az lenne a kérdésem, hogy a fenti beállítás mellett még miért szűkséges a
$k = "SET NAMES UTF8";
mysql_query($k); beillesztése?
Mit kéne még konfigurálni, hogy a fenti két sort ne keljen alkalmazni.