ugrás a tartalomhoz

Archívum - Aug 2009 - Fórum téma

augusztus 25

PHP - írás fájlba és hibakezelés

Max Logan · 2009. Aug. 25. (K), 16.46
A PHP fájlkezelésével kapcsolatban kicsit tanácstalan vagyok. Adott egy script, ami ír egy fájlba. Könnyen előfordulhat, hogy egy időben két user is írna a fájlba, ezért ugye kell a lock-olás (amit fopen esetén kézileg kell megoldani, file_put_contents-nél van rá flag). Aztán érdemes lenne még írás előtt ellenőrizni, hogy a fájl létezik-e, valamint, hogy írható-e. Na és ezen feltételek összesége okoz egy kis fejtörést.

Az fopen és a file_put_contents esetében is megoldott az, hogy ha nem létezik a fájl, akkor léterhozza. Az első probléma itt van. Ugyanis, az is_writable() ellenőrzi azt is, hogy a fájl létezik-e. Viszont nekem nem kellene a fájl létezésének ellenőrzése, mert ha nem létezik, akkor az fopen vagy a file_put_contents létrehozza. Az viszont logikus, hogy az is_writable() ellenőrzi, hogy egyáltalán létezik-e a fájl, aminek egy tulajdonságát akarja megállapítani.

Előáll az a faramuci helyzet, hogy először ellenőrizni kellene, hogy létezik-e a fájl, majd ha igen, akkor az írhatóságát ellenőrizni, majd ezt követetően ha írható, akkor írni bele.

A gond az, hogy alap esetben a fájl nem létezik, az első írás alkalmával a PHP hozza létre (dinamikus néven generált fájl).

És innentől nem tudom, hogy akkor most mit csináljak.

Ne foglalkozzak az is_writable() ellenőrzéssel, mert ha nem írható, akkor az fwrite vagy a file_put_contents dob egy false-t visszatérési értéknek?
 

vesszővel tagolt tömb mysql-be

kokozo · 2009. Aug. 25. (K), 13.01
Sziasztok!
olyan bajom van, hogy van egy változóm( $adat) melynek tartalma kb igy néz ki:

kiki1517,Kiki02,0:09:46,10:06,2000,0,500,0
Pityu,Szabatka3,1:58:13,11:54,0,0,0,1000
Béla,Orozco,2:29:01,12:25,0,4500,0,0

vesszővel van tagolva és enterrel lép sort és akár 100 sor is lehet benne, hogy lehetne ezt egyszerűen feltölteni php-vel mysql-be?
Kezdő vagyok de lelkes :) csak akadnak ilyen apró dolgok amik kifognak rajtam még..
 

Többszörös keresés egyszerűen MySQL-ben

Attus · 2009. Aug. 25. (K), 12.53
Kaptam nemrég egy feladatot, és nem tudtam rá a megoldást. Hátha itt valaki tudja.

Adott egy tábla, két mezője van:
page varchar
label varchar
Egy oldalhoz több címke is tartozhat.

A feladat: azokat az elemeket kell vizsgálni, amiknek van a címkéi közt "kék", "zöld" és "piros" is.
Egyszeres lekérdezés kell, az nem megoldás, hogy legyűjtöm külön-külön, majd veszem a keresztmetszetet.

Már nincs tétje, mert buktam a tesztet, de szeretném legalább utólag megtudni, és nem találtam meg a megoldást.
 

WampServer nem elérhető localhoston

inf · 2009. Aug. 25. (K), 09.58
Üdv.
Innen leszedtem a wampservert, aztán feltettem egy gépre, és megtetszett a menüje. A lényeg, hogy úgy gondoltam, hogy majd én lelövöm az itthoni apache+php-met, és felteszek ide is egy wampot. Hát nem jött össze.
A telepítése olyan, hogy nem lehet mit elrontani benne, viszont amikor rámegyek a localhostra, akkor egyszerűen nem jön le az oldal, pedig fut a httpd.exe.

A config ugyanaz, mint a másik gépen egy kivétellel. Itt msconfigban le van tiltva a windows tűzfal. Úgy gondolom, hogy a letiltott tűzfal mégis belenyúl a dolgokba, mert más programokkal is volt már ilyen gondom, hogy hirtelen megszakadt a kapcsolat.
Ki lehet valahogyan végleg ütni ezt a microsoft terméket (ide eredetileg más szót akartam írni)?
 

augusztus 24

Honnan szerezhetek forráskódot?

Katica34 · 2009. Aug. 24. (H), 19.51
Az a gondom hogy az oldalra szeretnék csillámot de nem tudom hol van hozzá forráskód?
LéCCI SEGÍTSETEK!
 

Greasemonkey script láthatósága

gidacska · 2009. Aug. 24. (H), 16.22
Sziasztok.Az lenne a kérdésem ha egy Greasemonkey scriptet futtatok egy weboldalhoz azt a weboldal látja?Az ikariamhoz van egy csomó és az a gond hogy kevés van elfogadva.Ha futtatok egy sciptet az üzemeltetők látják?Hagy valami nyomot a script?Köszi
 

gimp rajzeszközök ubuntu alatt

Ustak · 2009. Aug. 24. (H), 16.17
Üdv!

Már elég régóta ubuntu alatt dolgozom, és a képszerkesztést gimp -el oldom meg. Lassan felmerült bennem az igény, hogy beruházzak egy rajzeszközre, mely működne a fenti konfigurációval (ubuntu - gimp). A pillanatnyi pentagram tabletet nem sikerült még linux alatt működésre bírni, tehát a kérdésem, hogy van e ezzel kapcsolatban tapasztalatotok, milyen hazánkban is elérhető (árban és helyileg:-)) rajzeszközt ismertek, mik a tapasztalatok ilyen téren.
Nem találtam anyagot magyarul erre vonatkozóan (angolul meg nem kerestem, nyilván jó lenne itthoni forgalomban is kapható terméket találni).
Köszönöm:
Gábor.
 

augusztus 23

Látogatottsági kérdés

Typhon · 2009. Aug. 23. (V), 17.20
Honnan tudhatom meg,hogy egy általam megadott weblapot mennyien nézik egy nap? Van erre valami program? (nem az enyém az oldal)
Számláló nincs kirakva,a szerkesztőt nem kérdezhetem meg.
Kerestem SEO cuccokat ,de azok közt nincs ilyen :(
Más megoldás?
 

Szerkeszthető naptár

ferenczijj · 2009. Aug. 23. (V), 09.06
Üdv kedves Programozók!

Nekem egy olyan naptárra lenne szükségem, ami az oldalon keresztül, felhasználó által szerkeszthető.
Csak olyannyira, hogy egy adott napot le tudjon foglalni valaki, ahoz egy rövidebb szöveget "csatolni" és egy napot csak egyszer lehessen lefoglalni.
Ha Bármi hasonlóról tud valaki akár tutorialból vagy sablonból vagy saját alkotását megosztaná Velem meghálálnám.
De ha valakinek van ötlete, hogyan lehetne ezt a feladatot máshogyan megoldani azokat az ötleteket is érdekelnek, gondolok itt ŰRLAP-os megoldásra adatbázissal, bár ahoz is kellene egy kód vagy segítség.
Köszönöm.
 

augusztus 22

Php rekurzív regex

inf · 2009. Aug. 22. (Szo), 15.16
Üdv.

Van egy ilyenem:

$pattern='%(?<string>.*?){(?<function>\w+)(?:}(?<block>(?R)*?.*?){/(?P=function))?}%sD';
$test=
'text1
{test}
 d1 begin
 {test}
   d2 begin
   {test}
   d2 end
 {/test}
 d1 end
{/test}
text2
{test}
 d1b begin,end
{/test}';
preg_match_all($pattern,$test,$matches,PREG_SET_ORDER);
var_dump($matches);
aminek rossz a kimenete:

array (
  0 =>
  array (
    0 => 'text1{test}d1 begin{test}d2 begin{test}d2 end{/test}',
    'string' => 'text1',
    'function' => 'test',
    'block' => 'd1 begin{test}d2 begin{test}d2 end',
  ),
  1 =>
  array (
    0 => 'd1 end{/test}text2{test}d1b begin,end{/test}',
    'string' => 'd1 end{/test}text2',
    'function' => 'test',
    'block' => 'd1b begin,end',
  ),
)
helyette ilyet szeretnék:

array (
  0 =>
  array (
    0 => 'text1{test}d1 begin{test}d2 begin{test}d2 end{/test}d1 end{/test}',
    'string' => 'text1',
    'function' => 'test',
    'block' => 'd1 begin{test}d2 begin{test}d2 end{/test}d1 end',
  ),
  1 =>
  array (
    0 => 'text2{test}d1b begin,end{/test}',
    'string' => 'text2',
    'function' => 'test',
    'block' => 'd1b begin,end',
  ),
)
Már tanácstalan vagyok.


A lényeg, hogy a functionnek vagy van blokkja, vagy nincs, ha nincsen neki, akkor is function néven szeretném megkapni, és nyilván ha van blokk záró tag, akkor van neki blokkja. A fenti esetben ez sajnos nem teljesül.
Különböző nevű functionöknél nincs vele gond, de azonos nevűektől kiakad.