- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Projektor topic
- Azonnali informatikai kérdések órája
- SSD kibeszélő
- Épített vízhűtés (nem kompakt) topic
- Milyen belső merevlemezt vegyek?
- OLED TV topic
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Milyen videókártyát?
Új hozzászólás Aktív témák
-
biker
nagyúr
válasz
DeltaPower #5499 üzenetére
érthetelen módon ahogy belenyúltam a tömbbe, megborult az AS a flashben, ami sorban, növekvő id-re várja az üzeneteket.
pl lekértem fordított sorrendben a szólásokat, kiírta a tartalmat, és soha többet nem frissült, hiába ment be új adat, ugyanez volt normál lekérés és array_reverse esetén, és mindig, már bevezettem a $i és $i++ rendszert, hogy az id sorban legyen 1-től, de array revers után akkor is megborult.
itt adtam fel
-
biker
nagyúr
kicsit gázabb, flashnek adom át, és ott sorra bármilyen módon indexeltem újra, megbolondult a feldolgozó motor tömb kibontása.
csak mivel ez egyfajta chat lenne, fölösleges pl 100-nál több üzenetet lekérni, és jó lenne az utolsó 100, de majd akkor megduplázom queryben.
köszi
most még a variables_order-el szívunk, mert a cookie is benne van, ami pedig nem default php.iniben, EGPCS, és néha valahonnan belekerül valami a tömbbe, és nem lehet használni azon a gépen a rendszert, restart, cookie ürítés, után megy.
default pedig biztonsági okokból régóta EGPS szimplán.nem baj, servergazda majd csak átállítja, remélem
-
cucka
addikt
Nem igazán értem, hogy mit szeretnél. Az array_reverse alapesetben meghívva eldobja a kulcsokat és 0-tól újraindexeli a tömböt. Ha a második, opcionális paraméterét true-ra állítod, akkor pedig megtartja a kulcsokat - neked szerintem az első változatra van szükséged.
Ha pedig tudod előre, hogy hány elemed lesz, akkor a ciklusban array_push() helyett simán rakd be a megfelelő helyre az aktuális elemet és nem kell fordítgatni a tömböt.
-
biker
nagyúr
igen, az itteni kódban nincs benne, mert nem jó.
az a baj, emelkedő sorrendben várja a feldolgozó flash az ID-ket.
az array reverse megfordítja a sorrendet is és nem rendezi újra és nem indexeli újra, ez már lehet bonyolultabb lenne, marad a dupla query
mert az 1=a,2=b,3=c,4=d,5=e tömböt 5=e, 4=d, 3=c, 2=b, 1=a, és nem 1=a, 2=b stb
és ez már nem jó nekem. -
cucka
addikt
az a baj, az array_reverse a query eredményét nem rendezi vissza, vagy nem jól írom
Hát a kódodban nem írod sehol. Ha a kódod után beszúrsz egy
$vissza_tomb=array_reverse($vissza_tomb);
sort, akkor annak működnie kéne.tényleg nincs utolsó X sor fordított sorrendben?
Mysql-ben tényleg nincs.előbb kérjem le a sorok számát, és az -X legyen a start, vége X? ez nem túl elegáns
Ez is jó megoldás, vagy ott a dupla select, amit korábban írtam. Ez van. -
biker
nagyúr
az a baj, az array_reverse a query eredményét nem rendezi vissza, vagy nem jól írom
$eredmeny=mysql_query($parancs);
while($egy_sor=mysql_fetch_array($eredmeny)) {
array_push($vissza_tomb,$i.";".$egy_sor["nev"].";".$egy_sor["datum"].";".$egy_sor["uzenet"]);
$i++;
}én azt szeretném, hogy a while ciklusban kiírt adatok forduljanak meg, tehát ha lekérem DESC-vel az utolsó 10 sort, akkor 800 sor esetén ez lesz az eredmény:
800
799
798
...ezt forgítnám vissza sorrendbe, de nem akar menni
akárhogy próbálom, nem jön össze én vagyok a süket?
tényleg nincs utolsó X sor fordított sorrendben? előbb kérjem le a sorok számát, és az -X legyen a start, vége X? ez nem túl elegáns -
cucka
addikt
A problémára igazán értelmes megoldás nincs, a mysql-ben a limit pontosan annyit tud, ami elsőre is látszik.
Esetleg lehet próbálkozni nem túl elegáns és gyors dupla select-es megoldással:select * from (select * from tablanev order by mezonev desc limit 10) tbl_alias order by mezonev asc;
-
biker
nagyúr
válasz
Sk8erPeter #5491 üzenetére
köszi, ez kellett, beletettemmég egy str_replacet magamnak.
MÁS
mysql_query
limit 10 kiadja az első 10 sort ASC esetén, utolsó 10-et DESC esetén
DE
ASC-re rendzve kellene az utolsó 10 sor, mint php-ben a 10,-1, de ezt ugye nem eszi meg
mert ha DESC limit 10, akkor az utolsó sor van elől.
nekem az utolsó sor kellene utolsónak, de az utolsó 10 sor a táblából -
Sk8erPeter
nagyúr
Mit értesz azalatt, hogy "amit nem illik"?
Ez igencsak igényfüggő...
Amúgy ha automatikusan escape-el a magic_quotes_gpc miatt, az se jó (ne bírálja felül a döntésedet), arra fordfairlane írt korábban megoldást: [link]
---
(#5487) Tele von Zsinór: köszönöm, mindenképp átnézem.
-
cucka
addikt
Php-ban bele lehet futni hasonló furcsaságokba, köszönhetően a típusrendszern és az ellenőrző függvények furcsaságainak. Pár hasznos tudnivaló.
Először is: a php-ban minden változónak van valamilyen típusa.
A null az egy érték és egy speciális típus is, tehát ha egy változó értéke null, akkor a típusa is null lesz. A korábban nem deklarált változók értéke (és típusa is) null, ugyanez igaz akkor, ha egy tömb nemlétező indexére hivatkozol.
A == és a === közötti különbség, hogy az előbbinél a php a megfelelő típusúra cast-olja az operandusokat, utóbbinál nem cast-ol, hanem ellenőrzi az operandusok típusát. Ezért van az, hogy egy null értékű változó és egy nem deklarált változó egyenlő lesz mindkét egyenlőségvizsgálat esetén.
Az automata cast-olással szintén érdemes vigyázni, lásd a köv. kód, ami azt fogja kiírni, hogy 102:
print ('100 forintnak 50 a fele' +2);Az is_int (is_null, stb.) függvények a paraméterként adott kifejezés típusát ellenőrzik, semmi mást. Például lásd a köv. kifejezéseket, melléjük írtam a kif. eredményét.
(true==is_int(3)) //IGAZ
(true==is_int('3')) //HAMIS
(true==is_int('3'+0)) //IGAZ
A POST-olt adatok mindig stringként érkeznek, tehát az is_int nem igazán jó ellenőrzésnek. Helyette használható az is_numeric(), ami stringként megadott számokra is az elvárásoknak megfelelő eredményt adja. Az is_int(null) minden esetben false-al tér vissza (mivel a null típus és az int típus különbözőek).Az empty() függvény megint érdekes, először is azért, mert nem függvény, nem is viselkedik függvényként. Kizárólag változót lehet neki paraméterként megadni. Az empty igazzal fog visszatérni, ha a paraméterének értéke null, 0, '0', üres string vagy üres tömb. Ezek közül a problémát a '0' érték jelenti, ami egyértelműen egy nem üres string
A fentiek mellett használható még az isset() is, ami szintén nem függvény és csak változó paraméterrel működik. Az isset akkor ad vissza true értéket, ha a paraméterként kapott változó korábban deklarálva volt és az értéke nem null.
Php-ban nagyjából ezek az eszközök vannak erre a feladatra, remélem sikerült újat is mondanom.
-
Tele von Zsinór
őstag
válasz
Sk8erPeter #5486 üzenetére
Ne gondolj semmi komolyra, üres osztályok ezek, a lényeg annyi, hogy a típus más legyen (mert ez alapján működik a catch blokk). Azért az SPL hibaosztályaival is illik tisztában lenni, sokmindent lefednek gyárilag.
-
Sk8erPeter
nagyúr
Az empty() függvény miért nem megfelelő?
-----------------
(#5469) Tele von Zsinór: köszi a választ, akkor itt az ideje, hogy én is írjak pár saját hibaosztályt, és ezeket dobáljam a megfelelő helyeken.
Példának okáért milyen esetekre írtál saját hibaosztályt? Csak a gondolkodásmódra vagyok kíváncsi. -
L3zl13
nagyúr
-
biker
nagyúr
tudtok-e olyan servert, honlap elhelyezésre, ami sok sok usert elbír?
ahol most vagyunk, az elvileg 50 párhuzamos szálat enged userenként, ez ha jól értem annyi, hogy ha az adiott php file még fut, és 50 ember lekérésére fut, akkor az 51. kap hibát. ez mondjuk 150-200 userre elég egyszerre, kis gyors fileokkal?vagy többre is?
-
biker
nagyúr
ma meg tegnap volt egy jó kis szívásom.
átadni 0 értéket, leellenőrizni hogy él-e, és adatbázisban is tárolni.
az hagyján, hogy erre se a != se as isset nem jó, mert nem uaz az eredmény üres stringre, de ott már ideges voltam, mikor kiderüll hogy az is_int(null) true értékkel képes volt visszatérni
de ezt is megtanultam...
-
L3zl13
nagyúr
1. Jól látom hogy van X form nyitás (cikluson belül van!) és nincs zárás? (Gondolom van 1 db a cikluson kívül.) Így nem elpostolod az összes létező hidden mezőt függetlenül attól, hogy melyik submitot nyomod meg?
2. A queryben lévő $userid honnan kap értéket? Honnan tudja, hogy a $_POST tömbben milyen néven keresse az elemet. $_POST["ellen".MICSODA]? Az 1. alapján elküldött ÖSSZES hidden mező közül melyik értékét olvasod itt ki?
GondolomEzt én a helyedben úgy csinálnám, hogy:
1db form. (nyitás a ciklus előtt)
1 db hidden mező érték nélkül.
Submit gomboknál onclick esemény állítja be az egyetlen hidden mező értékét a megfelelő userid-ra, attól függően, hogy melyiket nyomták meg. -
randras
veterán
$post_id="ellen".$userid;
$post_id=$_POST[$post_id];
mysql_query("UPDATE felhasznalok SET ellenorzott='1' WHERE id='$post_id'") or die(mysql_error());A kódot nem lehet formázni itt a PH-n!
A mysql_error-nak csak akkor van értelme, ha a query-hez csatolod!Remélem segíthettem!
András
-
D@ni88
addikt
[B] if($_POST["valtozas"])
{
mysql_query("UPDATE felhasznalok SET ellenorzott='1' WHERE id='".$_POST["ellen".$userid.""]."'");
mysql_error();
}
if($_POST["valtozas2"])
{
mysql_query("UPDATE felhasznalok SET ellenorzott='0' WHERE id ='".$_POST["ellen".$userid.""]."'");
mysql_error();
}[/B]
[OFF]... itt még van pár parancs, de az nem ide tartozik[/OFF]
aztán ami a lényeg
while ($sor = mysql_fetch_array($res))
{
$kiir .="<form method=\"post\">".
"\n\t\t\t<td class=\"nev\">".$sor["fnev"]."</td>".
"<td class=\"Fnev\">".$sor["Vnev"]." ".$sor["knev"]." </td>".
"<td class=\"tel\">".$sor["telefonszam"]."</td>".
"<td class=\"email\">".$sor["email"]."</td>".
"<td class=\"cim\">".$sor["cim"]."</td>";
[B] if($sor["ellenorzott"]=='0')
{
$userid=$sor["id"];
//Itt postolja el
$kiir .="<input type=\"hidden\" name=\"ellen".$userid."\" value=\"$userid\">";
$kiir .="<td align='center' class=\"tel\"><input type=\"submit\" class=\"no\" name=\"valtozas\" value=\" \" ></td>";
}
else
{ $userid=$sor["id"];
$kiir .="<input type=\"hidden\" name=\"ellen".$userid."\" value=\"$userid\">";
$kiir .="<td align='center' class=\"tel\"><input type=\"submit\" class=\"ok\" name=\"valtozas2\" value=\" \" ></td>";
}
$kiir .="<td class=\"tel\">".$sor["ellenorzott"]."</td>";
$kiir .= "\n\t\t</tr></center>";[/B]
}na szval az lenne a problémám, ha én rákattintok a submit gombra, akkor mindig csak ugyan annál a felhasználónál változik meg az ellenőrzött tulajdonság, akármelyik submit gombra kattintok... 5let?
-
randras
veterán
válasz
Tele von Zsinór #5471 üzenetére
Igen, ez nagyon király!
Azért köszi!
Nem gondoltam, hogy van rá kész megoldás, habár a YouTube API létezéséről tudtam!
-
Tele von Zsinór
őstag
válasz
Sk8erPeter #5461 üzenetére
Az apache csinálja, de nem emlékszem, melyik beállítás miatt.
-
Tele von Zsinór
őstag
válasz
Sk8erPeter #5462 üzenetére
Gyakorlatban van pár saját hibaosztályom (mind az Exception-ből származtatva), ezeket dobom a megfelelő helyeken - értelmes message paraméterrel, mert az bekerül a logba.
Egyszerűsített példa:
<?php
try {
// ide jön az egész oldal
}
catch (Exception $e) { // nem minden hiba jut el idáig, de legkésőbb itt elkapjuk őket
//$e logolása
//hibaoldal
}Hibaoldal az kb. annyi, hogy az alap design köretbe bekerül egy "olyan hiba történt, amire nem voltunk felkészülve, de ne aggódj: értesültünk róla" jellegű szöveg.
Hibakezelés részben még vizsgálhatod, honnan érik el az oldalt (localhostról nézve jó eséllyel te vagy) és akkor meg kiírod a $e-t, melyik file és hol dobta, esetleg stack trace.
Nem tudom, mennyire mennek a régi, mysql_query()-nek átadott kérések a pdo-n keresztül, nálam a kódom és a pdo közt van még egy réteg, és az írja meg nekem a queryket
-
randras
veterán
Üdv!
Feldobnák egy témát, hátha már foglalkozott vele valamelyikőtök.
Szóval: pl. egy feltöltött flash video-ból hogyan lehet kinyerni egy pillantaképet?
Vagy hogyan tudom a népszerű videómegosztó oldalakon tárolt videók pillanatképeit lekapni?
Nagyjából arra lenne szükségem, hogy egy youtube videóra mutató linket helyezzek el a videó egy pillanatképén, mindezt dinamikusan.
Ötlet?
-
Speeedfire
félisten
válasz
Sk8erPeter #5464 üzenetére
Hát én mindenütt használok htaccess-t, mindenesetre érdekes.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #5463 üzenetére
A Newhosting-os szervernél ugyanez tapasztalható! Azt Te is ki tudod próbálni.
-
Speeedfire
félisten
válasz
Sk8erPeter #5461 üzenetére
Hát ilyet eddig még nem tapasztaltam. Elég érdekes és még biztonság szempontjából sem valami jó dolog. Ahogy olvasom ezt localhost alatt van. Nem tudom elképzelni, hogy a php lenne a hibás, az apache meg magától nem szokott ilyet csinálni, de próba képen szerintem kapcsold le a php szervert hátha meglátod, illetve lehet, hogy a log fájlok adnak valami magyarázatot rá neked.
-
Sk8erPeter
nagyúr
válasz
Tele von Zsinór #5460 üzenetére
A kivételkezelésre majd mindenképp átállok.
Nálad pl. nagyvonalakban hogy néz ki egy adatbázis-kezelésnél fellépő hiba esetén elkapott kivétel, és egyéb, az oldalon felmerülő hibák esetén dobott kivételek?
Tudsz mutatni egy pársoros gyakorlati mintapéldát, ha nem gond? Tényleg csak nagyvonalakban lennék kíváncsi konkrét példára.A PDO-t egyelőre úgy képzeltem el, hogy MySQL-lel, a régi lekérdezési parancsokkal együtt használnám, így állnék át - úgy olvastam, hogy erre is van lehetőség. Bár ha macerás, akkor inkább kihagyom.
Egyelőre ezeket találtam erről, még nem volt időm átolvasni: [php.net: MySQL Functions (PDO_MYSQL)], [dev.mysql.com: Using MySQL with PDO] -
Sk8erPeter
nagyúr
válasz
Speeedfire #5459 üzenetére
Most a böngészőfüggetlenséget úgy értettem, hogy arra voltam kíváncsi, az /index cím automatikus KIEGÉSZÍTÉSE az /index.php-re hol történik (még .htaccess nélkül!! tehát hozzábiggyeszti a php kiterjesztést automatikusan! és így a /index beírására nem az index könyvtárat, hanem az index.php FÁJLT nyitja meg) - nyilván ez szerveroldali dolog (nem böngészőtől függ).
Pont emiatt van a problémám, egyelőre NEM a .htaccess miatt, mert ha az egyáltalán nincs is a könyvtárban, akkor is megtörténik a kiegészítés (.php-re) - esetemben emiatt a /contact paramétert a .htaccess segítségével sem tudtam átadni GET paraméternek, mert automatikusan a /contact.php fájlt nyitja meg.
Ennek megoldására voltam kíváncsi, hogy a contact.php fájl átnevezése helyett (pl. ha átnevezem contact222.php-re, akkor csak a /contact222 cím beírásának hatására fog megnyílni ez a fájl, a /contact-re nem) - van-e más megoldás, és hogy pl. Apache-nál ez az automatikus kiegészítés konkrétan miből ered. -
Tele von Zsinór
őstag
válasz
Sk8erPeter #5457 üzenetére
Leegyszerűsítve annyi, hogy az egész kód egy szép nagy try-catch blokkban van, vannak ezen belül újabb blokkok, de ami eddig eljut (a végén minden Exception-ból származót elkapok) az egy szép "internal server error" oldalra irányít - logolás után, persze.
A bentebbi blokkok felelősek a specifikus hibákért (db kapcsoódási hiba, query hiba, függvényhívásnál hiba, akármi); de van egy legkülső blokk, ami elkap minden mást (vagy amit hagyok eddig eljutni), a felhasználó nagyon kivételes esetektől eltekintve mindig kap egy értelmes oldalt.
A PDO hasznos dolog, manapság már mindenütt engedélyezve is van, de ha más adatbázismotorra állsz át, ugyanúgy át kell nézni az összes querydet.
-
Speeedfire
félisten
válasz
Sk8erPeter #5458 üzenetére
Konkrétan minden linket át kell írnod, amúgy meg böngészőfüggetlen, az egész dolgot a htaccess irányítja.
-
Sk8erPeter
nagyúr
Még egy kérdés, bocs, ha kicsit OFF.
Apache-csal kapcsolatos:
van egy contact.php nevű fájlom, és most localhoston próbálgatva csodálkoztam rá, hogy a http://localhost/contact beírására (kiterjesztés nélkül) is megnyitja a contact.php-t, pedig most épp az URL keresőbarátabbá tételével szórakozom, és inkább azt szeretném, ha egy GET változónak lenne átadva a "contact". A hozzátartozó .htaccess már megvan, működőképes is, kivéve ennél a contact.php-nél, mert a /contact-re is azt nyitja meg, nem az index.php GET változójaként adja át, így a mod_rewrite nem működőképes.
Csak úgy változtathatok ezen, ha a fájlnevet átírom? Ez mondjuk csak azért problémás, mert akkor máshol is át kell írni, minden fájlban, amiben hivatkozom rá - mondjuk annyira nem durván para, mert Notepad++-ban csak meg kell nyitni az érintett fájlokat, és egy kattintás az összes doksiban a névcsere, de azért érdekelne: az automatikus névkiegészítés miatt van?Pl. /index esetén is általában ki lesz egészítve automatikusan a php kiterjesztéssel (index.php-re) - ez most böngészőfüggő vagy a szerver intézi így?
-
Sk8erPeter
nagyúr
válasz
Gyuri16 #5456 üzenetére
Tényleg, ha már itt tartunk, Ti milyen módon kezelitek le az ilyen jellegű hibákat?
Gondolom sokan kivételkezeléssel, van, aki más módszerrel.
Bár a kivételkezelés szép, mert elkerülhető vele a sok if-elseif-else ág, és mindig egy helyen kezeled a kritikus problémát.
Milyen esetekben dobtok kivételt?
Én most gondolkoztam a PDO használatán, talán áttekinthetőbb lenne pl. adatbázis-kezelésre.
Sajnos a régi kódjaim tele vannak ilyen mysql_query(...) or die(...) részlettel, amit így utólag már belátok, hogy valóban nagyon csúnya módszer, ezért szeretném lecserélni helyenként. (Még ha látszólag nem is éri meg - van olyan oldal, aminek a kódját áttekinthetőbbé, a futását gyorsabbá szeretném tenni.)
Vicces utólag böngészgetni a régen írt kódjaimat...Egyébként a kivételkezelésnél akkor az egész kritikus kódrészletet bele kell pakolni egy try blokkba, ami szintén nem túl szép, nem? Bár még mindig szebb, mint a sok if-else ág.
-
Gyuri16
senior tag
szerintem biker tisztaban van a php szintaxisaval, es csak a lenyegi reszt masolta ide. azon kivul nem feltetlenul jo a tanacsod. hibat rendesen kell kezelni, a die csak megoli a szkriptet, sok esetben nem ez a cel. jobb weboldal logolja a hibat, hogy az admin tudjon rola, a felhasznalonak pedig valamilyen ertelmes formaban talalja, hogy gond van az oldallal, probalja meg kesobb. a hiba kiiratasa pedig meg roszabb, a felhasznalonak nem jo elarulni az oldalad belso szerkezetet. ezeket csak debuggolasra szabad hasznalni, eles helyzetben nem.
-
nuendo
tag
csak egy jó tanács
SQL lekérdezésnél használd a mysql_query () függvényt, és a hozzá tartozó OR DIE párt..tehát
$sql = mysql_query ("lekérdezésed.....") or die ("Hibás a lekérdezés!");
igy tudod vizsgálni a lekérdezésedet is hogy egyáltalán jó-e
-
biker
nagyúr
bakker, nem itt volt a hiba, hanem abban az ágban, ahova megyek a lekérés után
-
biker
nagyúr
beszarokneki hiba
ez a select tökéletesen lefut a myadminban:
SELECT expo_kesz_standok.tulaj_id, expo_resztvevok.nev
FROM expo_kesz_standok
LEFT JOIN expo_resztvevok ON expo_kesz_standok.tulaj_id = expo_resztvevok.id
WHERE expo_kesz_standok.tulaj_id >=1
LIMIT 0 , 30copy-paste a php-be querybe, és le se fut a script. csak ez az egy sor a hiba benne, kiveszem, jó, berakom, rossz
a select * FROM persze lefut.erre varrjatok gombot
-
DeltaPower
addikt
-
SaNyEe
aktív tag
Hi!
MySQL adatbázistervezési kérdésem volna.
Melyik megoldás a gyorsabb sokfelhasználós rendszer esetén:
- minden felhasználónak létezik egy saját táblája ahol rengeteg mennyiségű szöveges információt tárolhat.
- az összes felhasználónak létrehozunk egyetlen hatalmas táblát ahova a csomó szöveges infóikat pakolásszák és felvesszük mezőként a userID-t és indexeljük.Egyáltalán MySQL-ben van-e fizikai/logikai határa a táblák számának?
Tudom nem pont témába vágó, de ez a topic pörög a leginkább (:
-
L3zl13
nagyúr
Ez is fönt van a php.net-es példában:
if ($handle = opendir('.')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
echo "$file\n";
}
}
closedir($handle);Azaz kiíratás (vagy a korábbi esetben a tömbbe pakolás) csak akkor történik meg, ha nem "." vagy ".." a fájlnév. Hasonlóan lehet kizárni a listából könyvtárakat is (is_dir()) vagy kiszűrni kiterjesztés alapján bizonyos fájltípusokat.
-
PazsitZ
addikt
válasz
Speeedfire #5433 üzenetére
Nem értem a problémádat.
Az adatbázist php-ból éred el, a php fájlban tudo, hogy ajax vagy nem ajax, innen mia nehéz?
Vagy akkor úgy tűnik nem értem, mit szeretnél csinálni. -
vamzi
senior tag
A könyvtárlista az megy, jelenleg is így iratom ki a felhasználókat, megnyitni csak azért nyitom meg, hogy lássam az ip-t és időt. Tényleg, a . és .. fájlokat hogyan tudnám eltűnteni? (Ugyebár linuxszot használok és ott ezek fileok, nem tudom windowszal mizu). Ezeket hogyan tüntessem el? próbáltam iffel "." || ".." de nem történt semmi.
Egyébként köszi
-
L3zl13
nagyúr
Először is kell hozzá egy könyvtár listázás, ami egy alapscript. Ha még nem csináltál ilyet, akkor php.net-en is fenn van a readdir függvény alatt. De szerintem valahol megvan itt a topicban is.
Ehhez képest annyit kell változtatnod, hogy nem rögtön kiiratod a fájlnevet, hanem eltárolod az elemeket egy asszociatív tömbben. (pl $files[$filename]=$modtime) Az utolsó módosítás idejét a filemtime() függvényből kapod meg. (Unix timestampként)
Ezt a tömböt aztán rendezed a módosítás ideje alapján. (pl asort() vagy arsort())
Aztán a tömbbel azt csinálsz amit akarsz, kiíratod foreach-csel vagy ahogy akarod.
Ha az időt is ki akarod íratni akkor értelmes formára hozhatod előtte. (date() függvény) -
randras
veterán
válasz
Speeedfire #5439 üzenetére
Szia!
Nekem ez localhoston és élesben is internal server error 500-at dob!
-
Speeedfire
félisten
válasz
randras #5438 üzenetére
Ennek elvileg mennie kellene. Így minden kérést ami a fő könyvtárba megy 301-el átirányítja a layout mappába
<IfModule mod_rewrite.c>
RewriteEngine on
Options -Indexes Includes FollowSymLinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://domain.hu/layout/$1 [301,L]
</IfModule> -
randras
veterán
Üdv!
A következőt szeretném megvalósítani:
Van egy könyvtár-struktúrám, valahogy úgy, hogy a főmappán belül egy mappában vannak a PHP és JS fájlok, egy másikban a képek, és ezekre a PHP-kban ../-el hivatkozok.
A scriptek is a ../ eléréssel működnek, elég macerás lenne átírni mindenhol.
A konkrét probléma tulajdonképpen az lenne, hogy jelenleg www.tárhely.hu/layout címen tudom elérni az oldalt, ezen a mappán kívül, de azonos szinten vannak mappákban a szükséges fájlok, és nyilván nem tudom egy szinttel feljebb tenni a többi mappát, hogy megmaradjanak a működő hivatkozások, mert az már a public_html mappán kívül lenne..htaccess segítségével megoldható-e az, hogy tulajdonképpen minden www.tárhely.hu/valami-t www.tárhely.hu/layout/valami-nek értelmezzen? (Keresőbarát URL-t használok.)
Valamilyen rewrite rule kéne, csak nekem nem nagyon mennek ezek dolgok egyelőre...
RewriteEngine on
RewriteCond %{HTTP_HOST} ^localhost:85/oldal [NC]
RewriteRule ^(.*)$ http://localhost:85/oldal/layout/$1 [L,R=301]Valami ilyesmi lenne?
Esetleg egy jól használható könyvet, PDF-et is ajánlhatnátok erről a témáról...
Köszönöm a segítséget előre is!
-
vamzi
senior tag
Ez a megoldás tökéletes lenne nekem(igen, a felhasználó neve a fájlnak a neve). Erre tudnál valami megoldást, vagy iránymutatást írni? Úgyis mindig csak az utolsó dátumot meg ip címet olvasom ki a fájlból, de az ipcím akár el is hagyható lenne és jelentős terhelés csökkentés lenne a szervernek, hogy nem kell minden egyes alkalommal több száz fájlt átolvasgatnia(ami jelenleg még csak pár 10 soros, de idővel sokkal nagyobb lesz).
Az adatbázist egyelőre hanyagolnám, amőgy is csak egy hobbi oldal, amit azért is szerkesztgetek, hogy tanulgassam a html-t és php-t. mysql-t egyelőre nem akarom(főleg a kevés erőforrás miatt)
-
L3zl13
nagyúr
Hogy logot fájlba készítesz még csak hagyján, de ha már műveleteket is akarsz csinálni a benne lévő adatokkal, akkor illene adatbázist használni.
Mindenesetre, ha a fájlok elnevezése "beszédes" (felhasználónév) és feltéve, hogy csak bejelentkezésekkor írsz a fájlokba, az utolsó módosítás dátuma alapján rendezheted őket, és akkor nem kell a fájlokat egyesével megnyitogatnod, és kiolvasgatni + feldolgozni egy egy sort.
-
Tele von Zsinór
őstag
válasz
Speeedfire #5433 üzenetére
A nagyobb JS frameworkök (a jQuery is) beállít egy "X-Requested-With" fejlécet az ajax kéréseknél, ennek létét vizsgálva el tudod dönteni, hagyományos kérés-e vagy ajaxos.
-
vamzi
senior tag
Sziasztok!
Nem adatbázisban vezetem a felhasználóimat, hanem fájlokban. Minden egyes felhasználó kap egy külön fájlt ami felhasználó aktivitását írja le ilyen formában:
felhasználónév legutolsó_bejelentkezése(date("F j, Y, g:i a") formában) IP_címeTehát van 3-400 fájlom és a legutolsó bejelentkezése alapján szeretném rendezve kiírni a neveket. Később esetleg szűrni is szintén dátum alapján, de egyelőre csak rendezni szeretném. Hogyan tehetném ezt meg? Ráadásul a fájlok soraiba a formázás miatt a dátum után bekerül még egy </td><td> is.
Előre is köszi
-
PazsitZ
addikt
válasz
Speeedfire #5430 üzenetére
Szvsz legegyszerűbben úgy, hogy átadsz egy ajax=1 paramétert, amit htaccess-en belül is továbbadsz.
pl.:
RewriteRule ^index.php?(.*)ajax=1$ /index.php?$1ajax=1
RewriteRule ^index.php?(.*) /index.php?$1A php-n belül pedig eszerint tudod kezelni, hogy csak a main részt adod vissza vagy az egész oldalt.
Ha jól értem a problémát.Az előző esti válasz meg picit mellément
Sikerült közel egy hónappal ezelőtti régi hsz-re válaszolnom.
-
Speeedfire
félisten
válasz
Speeedfire #5429 üzenetére
Azt hiszem rájöttem a hiba okára, csak még nem tudom, hogy kivitelezzem.
A hiba valószínűleg a htaccess miatt lehet.
Minden kérést az index.php dolgoz fel viszont a valogat.php csak az index.php oldal #main div-jében van emiatt ha jön egy kérés szerencsétlent az index.php oldalra irányítja holott ajaxos kérésnél már ez nem kellene. Remélem holnap rájövök arra, hogy lehetne ezt megoldani, bár a seo-s "kollégák" nagyon mondják, hogy ne csináljam, mert a nagy G nem fogja szeretni. -
Speeedfire
félisten
válasz
Sk8erPeter #5428 üzenetére
Egyikkel sem volt jó sajnos, a firebug olyat írt ki, hogy elért valami korlátot
.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #5425 üzenetére
Firebugban be kell kapcsolni az "XMLHttpRequest események megjelenítése" menüpontot, ha az AJAX-kéréseket szeretnéd figyelni. (Konzol fülre kattintva megjelenik egy kis nyíl, ott lehet kiválasztani.)
A szkripthez pedig lehet betenni breakpointokat, és ott az látszik, hogy a "Tovább..."-ra kattintva a szkript is lefut, abban a pillanatban olyan lesz az oldal kinézete, amilyet linkeltél (a #main-ben a kerettel együtt megjelenik a tartalom), de aztán frissíti az egész oldalt (innentől pedig értelmetlen az AJAX-kérés).Megpróbálhatnád úgy is a ready utáni résznél, hogy
$('.ajaxload').live("click", function () {
$('#main').load($(this).attr('href') );
return false;
});(és nem a load paramétereként teszed be a másik függvényt)
próbát megér, legalább addig jussunk el, hogy ne frissüljön az egész oldal, ha már AJAX.Szerk.:
ja, VAGY pedig ha már az
e.preventDefault();
sort használod, akkor ne a load paramétereként tedd be, hanem azután, ha már... legalábbis így elsőre jobbnak tűnik...$('.ajaxload').live("click", function ( e ) {
$('#main').load($(this).attr('href') );
e.preventDefault();
}); -
Speeedfire
félisten
válasz
Tele von Zsinór #5426 üzenetére
Módosítottam, de így is ugyan az az eredmény sajnos... a firebug nem jelzett eddig sem hibát, illetve annyi, hogy a válasz rész üres, ez nem tudom mit jelent.
Források, hátha segít...
valogat.php, ez felelős a tartalmak szortírozásáért
[link]tartalom.php, ez mondja meg melyik tartalom hogy "viselkedjen"
[link] -
Tele von Zsinór
őstag
válasz
Speeedfire #5425 üzenetére
Így legyen: "click", function (e) {
Másrészt: tedd fel a firebug kiterjesztést, és akkor pontosan tudni fogod, ajax-e vagy sem (a console fülön naplózza az ajax kéréseket, elég részletesen - sok egyéb nagyon hasznos funkciója mellett).
-
Speeedfire
félisten
válasz
Sk8erPeter #5421 üzenetére
Úgy néz ki hogy sikerült összehozni, bár elég kevés adat van fent, így nem tudom eldönteni, hogy most ajax vagy sem.
Mindenesetre most ez van a js fájlban:
$(document).ready(function () {
$('.ajaxload').live("click", function () {
$('#main').load($(this).attr('href'), function () {
e.preventDefault();
});
});
});Érdekességek:
localhost alatt nem megy egy böngészővel sem:
ff kiakad, ie/chrome nem kezeli le
szerver oldalon (egyelőre csak a tovább a bejegyzésnél van js load):
ff/crome tölti rendesen, ie betölti a #main-be az egész oldalt, majd a rendes tartalmat -
Tele von Zsinór
őstag
válasz
Sk8erPeter #5423 üzenetére
Azért, mert ez nem a működését befolyásolja, hanem a többi eseménykezelővel való viszonyát. Az általam mondott problémába akkor fog belefutni, amikor több eseménykezelője van egy elemcsoportra.
-
Sk8erPeter
nagyúr
válasz
Tele von Zsinór #5422 üzenetére
De ha ez így van, akkor nálam miért működik az elvárt szerint a fentebb írt kód? (több böngészőben is)
Mondjuk igaz, most a próba és az egyszerűség kedvéért csak egy pársoros, egy-egy képet tartalmazó HTML-fájlllal próbáltam ki. -
Tele von Zsinór
őstag
válasz
Speeedfire #5418 üzenetére
A kódod egy sort kivéve jónak tűnik, ez pedig a return false;. Használd helyette az e.preventDefault();-ot, ahol e a click függvény paramétere. Itt szépen leírják, miért.
Röviden: a return false; ekvivalens azzal, hogy e.preventDefault(); e.stopPropagation();, azaz megakadályozza a többi eseménykezelő futását, amiknek amúgy le kéne (mert mondjuk ugyanarra az elemre vannak kötve, vagy valamelyik szülőjére).
-
Sk8erPeter
nagyúr
válasz
Speeedfire #5420 üzenetére
Akkor csak az lehet a gond, hogy a beillesztendő fájlba (ami jelen esetben a jQuery-kódban a $(this).attr('href') ) include-oltad a keretet is, mert egyébként teljesen jól kell működnie (amennyiben a kód a head részben van elhelyezve, stb.), kipróbáltam, és jól ment.
Magához a betöltéshez nincs szükség a második paraméterre:
<script type="text/javascript">
<!--
$(document).ready(function(){
$('.ajaxload').live("click", function () {
$('#main').load( $(this).attr('href') );
return false;
});
});
// -->
</script>De figyelj arra, hogy az AJAX-os betöltés esetén lehet, hogy a Google nem indexeli a teljes oldalt.
OFF: akármennyire borzasztó és rémisztő is, már a teljes admin oldal valid...
-
Speeedfire
félisten
válasz
Sk8erPeter #5419 üzenetére
-
Sk8erPeter
nagyúr
válasz
Speeedfire #5418 üzenetére
Basszus, jobb lett volna, ha előbb jobban körbenézek.
Most találtam meg a Jeditable oldalán, hogy el lehet küldeni extra paramétereket is a köv. módon:
$(".editable").editable("http://www.example.com/save.php";, {
submitdata : {foo: "bar"};
});Így pedig a $_POST tömbbe új elemeket pakolhatok, vagyis a gond megoldva: ilyen módon elküldöm az eredeti nevet, id-t, és akármit, amit csak szeretnék...
Ráadásul biztonságosabb megoldás.
Szóval a gond megoldódott.Az admin oldalt nem véletlenül validálom: az eddigi részek mind validak, így ez már egyrészt szinte presztízskérdés
, na de ami sokkal fontosabb, hogy a validálással rengeteg hibát is fel lehet fedezni, pl. sokszor előfordult, hogy a PHP által generált kódba sikerült belekutyulni olyan módon a HTML-kódot, hogy maga az oldal elcsúszott - a validálással viszont többnyire igen gyorsan rájöttem, hogy hol is lehet a hiba; ezenfelül nem véletlenül találták ki a valid kódot, mert így csökkentem annak az esélyét, hogy különböző böngészőkben különböző módon jelenjenek meg a dolgok, persze nyilván már amennyire szabványkövetők (ha nem is szabvány, csak ajánlás) a böngészők... (lásd IE, stb.)
De mondok még egy érvet: kis gyakorlattal és odafigyeléssel nagyon egyszerű valid kódot írni...Hidd el, nem haszontalan.
------------
A Te kérdésedre:
nálad az "ajaxload' osztállyal ellátott HTML-elemeknek van href-attribútumuk?
mutass rá példát, pl. így van, ahogy itt?
<a href="akarmi.html" class="ajaxload">...</a>A load() függvénynél felesleges a második paraméter, ha azt nem használod semmire.
Mutass konkrét példát, és akkor sztem tudok segíteni. -
Speeedfire
félisten
válasz
Sk8erPeter #5417 üzenetére
Ezzel az admin oldali validálással sokkot kaptam. Ne haragudj, de ez kb olyan dolog, hogy ok valid, de ettől függetlenül senki sem fog vele foglalkozni, se a google, se a juzer stb
Amúgy szerintem annyit megcsinálhatnál, hogy amikor ellenőrzöd nem a nevet ellenőrzöd h bent van-e az adatbázisban, hanem mondjuk:
adatbázisban ez van:
Tóth Szabi
Ezt akarom én módosítani pl Tóth Szabolcs-ra akkor mind a 2-nek csinálok egy md5 hash kódot és azt ellenőrzöm, hogy megegyezik-e. Ha hülyeség akkor szólj és még agyalok rajta,
A másik ha ilyen adatot küldesz el:
<div class="edit" id="nev_68_eredet_inév">eredetinév</div> szóval van a névben _ akkor esetleg számoltasd meg a php-val hogy a sztringben mennyi _ jel van, ha több mint kellene akkor az a 2 utánikat egynek veszed.
Viszont akkor már én is megkérdezem a saját kis gondomat.
Ajaxosítani szeretném az oldalamat, már írtam 1-2 dolgot, hogy működik a keresőbarát url,de kicsit leírom megint.Szóval adott az index.php
itt a #main-divbe be van húzva a valogat.php ami azért felelős hogy megnézi az URI-t és megkeresi az adatbázisban a hozzá tartozó elemet.
pl:
URI=belepes a hozzá tartozó érték=./belepes.php&admin=1
A valogat.php szétszedi a kapott értéket a & jelnél az elsőt includolja a többit meg változókká alakítja. Jelen esetben
$admin=1;
include 'belepes.php';a htaccessben ez van:
RewriteRule ^(.*)$ index.php?phpoldal=$1 [QSA,L]Tökéletesen működik az oldal php kóddal, viszont az ajaxos megoldással nem akar menni. Konkrétan az a gond, hogy a #main-be akarom betölteni az uri által küldött oldalt, de mindig megnyitja saját magát, ha valakinek van valami ötlete akkor szívesen venném.
ajax oldal:
$(document).ready(function () {
$('.ajaxload').live("click", function () {
$('#main').load($(this).attr('href'), function () {
});
return false;
});
}); -
Sk8erPeter
nagyúr
válasz
Speeedfire #5416 üzenetére
Hülyeségnek tűnhet, hogy admin-oldalt szeretnék validálni, de mégis.
Operából Direct Inputtal el lehet küldeni validálásra az oldalt (vagy más böngészőben beépülővel), szóval ez nem kérdés, tudom ellenőrizni a validitást.
A szóköz azért fordulhat elő az id-ben, mert lehet olyan név, amit lekérek adatbázisból, amiben előfordul szóköz (nem tudhatom, hogy a júzer milyen nevet tölt fel, de simán lehet, hogy olyat, amiben van szóköz).
Mondom, az eredeti nevet csak azért pakolom bele az id-be, hogy gyorsabb legyen ellenőrizni, nem úgy küldte-e el a júzer a "módosított" adatot, hogy valójában nem módosított semmit - ha nem módosított, megegyezik az eredetileg látott értékkel, minek nyúlkáljak adatbázishoz, úgysincs változtatás.Ja igen, ami fontos a megértéshez: a Jeditable úgy működik, hogy mondjuk megadsz egy CSS-osztályt (pl. "edit") egy HTML-elemnek (pl. egy div-nek), és onnan fogja tudni, hogy kétszeri ráklattyogásnál (lehet akár egyszeri is egyébként, több lehetőség van) módosítható legyen a mező, átalakítja form-má, azonbelül létrehoz egy input mezőt, majd egy Enter leütésével ezt a form-ot tudod elküldeni a feldolgozó fájlnak, majd az abból visszakapott adatot kiíratni - ha sikerült a módosítás, nyilván már a módosított adatot írod ki.
Maga a HTML-elem azonosítója (id) a $_POST['id'] változóval érhető el, a módosított érték pedig a $_POST['value'] segítségével (ez az input mezőből jön).Példa:
<div class="edit" id="nev_68_eredetinév">eredetinév</div>A példában szereplő "eredetinev" adatbázisból jön (ebben lehet szóköz is! Pl. "eredeti név"); a "nev" jelzi, hogy most mondjuk az adatbázisba feltöltött cuccnak a nevét szeretném módosítani, a "68" pedig az adott elem azonosítója.
Eszerint pedig szétrobbanthatom a $_POST['id'] változót mondjuk alsóvonás szerint (erre mondtam, hogy esetleg hibaforrás lehet, ha a júzer alsóvonás-karaktert ad meg, ez most átmeneti próbálkozás egyelőre), az új név pedig a $_POST['value'] változóban van:list($object_to_mod, $dog_id, $original)=explode("_", $_POST['id']);
$new=$_POST['value'];Ha a $new megegyezik az $original változóval, akkor visszatérek az eredeti névvel, és kész, nem vizsgálgatok tovább, így gyorsabb.
Remélem nem voltam túl zavaros.
-
Speeedfire
félisten
válasz
Sk8erPeter #5415 üzenetére
Ez jó kis plugin lehet, viszont nem értem akkor miért kell neked a szóköz?
Gondolom az első karakter a div id a másik meg az azonosítója a formnak. Másik kérdés, hogy ha jól értem akkor te az admin oldalt is validálni akarod? Lehet valamit félreértettem és ezért nekem kicsit magas lett.Amire gondoltam:
<div id="akarmi" name="2">
Ezt küldöd el js-el akarmi 2, esetleg vessző nem lehet megfelelő? Ha meg tényleg admin oldalon akarod validálni akkor felesleges, mert a validátor oda úgy sem lát be.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #5414 üzenetére
Hali!
Sajnos az nem jó megoldás, mert az eredeti névre van szükségem. De az furcsa, hogy a HTML-kódra lecserélve sem fogadja el a w3c validitás-ellenőrzője.
Na, de jobb, ha elmondom, mire kell:
a Jeditable nevű jQuery-plugint használom egy admin-oldalon, ahol módosításokat lehet elvégezni egy adott névnél és egyéb adatbázisban szereplő elemeknél, de úgy, hogy a felhasználó csak kétszer ráklattyog a névre, és máris módosítható az elem, a módosítást pedig elküldi a feldolgozó PHP-fájlnak. Kényelmes, olyan jellegű, mint pl. Facebook-on a módosítható mezők (pl. a Magamról résznél, stb.), helyben módosítasz, nincs szükség az egész lap újratöltésére, stb.A HTML-elem (div, stb.) azonosító (id) attribútuma segítségével (többek közt ezt alakítja a Jeditable $_POST adattá, úgy, hogy a div-et formmá alakítja a ráklattyogáskor! Meg elküldi az input mezőbe beírt adatot) elküldöm az adott elem azonosítóját, ami alapján lecsekkolom az adatbázisban, tényleg van-e ilyen elem, valamint egy alsóvonással elküldöm az eredeti nevet is (ez viszont egyelőre hibaforrás lehet, ha a felhasználó alsóvonás-jelet ad meg a névben, mert explode()-dal bontom szét az elemeket, de ezt majd megoldom), hogy amennyiben megegyezik a módosított névvel, akkor egyszerűen visszaküldöm az eredeti nevet, és nem dolgozgatok fel, így gyorsabb.
Természetesen minden oldal elején ellenőrzöm, a felhasználó belépett-e (a módosító oldalon és a feldolgozó fájlban is), tehát valamelyest biztonságosnak mondható, még ha egyelőre vannak is lyukak benne...Ezért szeretném elküldeni az eredeti azonosítót és magát a mezőnevet is.
Többnyire nincsenek brutálhosszú dolgok, ami ne férne bele egy id-be, ezért gondoltam ehhez a módszerhez folyamodni...
Kerülő megoldás lehetne az, hogy csak az id-et küldöm el, de akkor minden alkalommal tényleg szükség van adatbázis-lekérésre, eddig ezt kerültem el azzal, hogy csekkoltam, megegyezik-e az eredetileg a mezőben szereplő értékkel, vagy sem, ha igen, akkor nem dolgozgattam fel, egyszerűen visszaadtam a júzernek ugyanazt a nevet (amit nem is módosított).Nem tudom, érthetően írtam-e le...
-
Speeedfire
félisten
válasz
Sk8erPeter #5413 üzenetére
az nem lehet megoldás h semmire cseréled a szóközt?
str_replace(' ', '', $row['elem']);
A másikra meg annyi, hogy kerülni kellene a spec karaktereket.
Szerintem csak szám és angol karakter lehet benne, illetve -_ -
Sk8erPeter
nagyúr
Hali!
Kicsit OFF, de biztos tudtok segíteni.
Adatbázisból kérek le olyan adatot, amit egy HTML-elemnél az adott elem (div, p, stb., ez mellékes) azonosítójába szeretnék tenni. Ez oké, de lehet olyan adat, amiben szóköz szerepel, ami miatt az id-ben is szóköz van, ami XHTML Strict 1.0 szerint nem valid. Akkor sem, ha a szóközöket -re cseréltem, és még átnyomok rajta egy htmlentities()-t az egyéb karakterek miatt.
Tehát pl. <div id="akarmi 2_stb.">...</div> már nem valid az XTHML Strict szerint.
Van valami megoldási javaslatotok?Thx.
----------------------------------Szerk.:
Ja még egy: az XHTML Strict oldal esetén a w3c validitás-ellenőrzője nagyon sokszor pampog az elnevezési konvenciók miatt, tehát pl. az id-ben nem lehet tilde (~), vagy-jel (|) és ehhez hasonlók, van erről valami lista, hogy mik a megengedett karakterek? Így nem egyszerű valid oldalt készíteni, ha ennyi tiltott karakter van, és még a HTML-entitás (hogy mondjam ezt szebben) kódja szerint sem fogadja el.
-
Tele von Zsinór
őstag
válasz
Peter Kiss #5409 üzenetére
Aki belépést get-tel old meg, az meg is érdemli. Arról nem is beszélve, hogy egy login folyamat megváltoztatja az alkalmazás állapotát, így post-ot kell használni szabvány szerint.
-
Tele von Zsinór
őstag
válasz
Speeedfire #5410 üzenetére
Valóban, kb. 3 kattintással több post adatot átírni, mint getet. És ékezetes karakterekkel sincs különbség, a böngésző elintéz mindent.
-
Speeedfire
félisten
válasz
Tele von Zsinór #5408 üzenetére
Arra gondoltam, hogy a címsorban nem látszik, így ergo valamivel biztonságosabb. Meg postolni egyszerűbb pl ékezetes karaktereket is.
-
Peter Kiss
őstag
válasz
Tele von Zsinór #5408 üzenetére
Ez rendben van, de ha van valaki annyira gyökér, hogy pl. regisztrációt, belépést GET-tel valósít meg, akkor az látszik az URL-ben, könnyebben visszakereshető a felhasználói név + jelszó.
GET-nek az is hátránya, hogy kevesebb adatot lehet vele átnyomni, plusz fájlok küldésére alkalmatlan. Emellett az URL encode & decode (elhagyása) jelenthet gondot.
-
Tele von Zsinór
őstag
válasz
Speeedfire #5399 üzenetére
Biztonsági szempontból semmi különbség nincs a get és a post között. Mindkettő felhasználótól származó adat, ergo megbízhatatlan.
-
Speeedfire
félisten
Sikerült megoldani a gondomat, nem lett valami szép. Jöhetnek majd a kritikák....
-
sziliati
csendes tag
Sziasztok!
Remélem jó helyen járok ha nem akkor bocsánat(kezdő fórumozó vagyok)! PHP-ba vágtam a fejszémet és el is akadtam!
A kérdésem a következő lenne:egy login rendszerrel kísérletezem, minden szépen megy a nagyobb levelezőkön és a kisebbeken is gyönyörűen működik az aktiváló link! De a freemailban:
ebből(ezt küldöm el e-mailban):
$msg='http://xy.xy/verify.php?email='.$email.'&hash='.$hash.'';
ez lesz:
xy@xy.hu&hash=aab3238922bcc25a6f606eb525ffdc56" onmouseover="parent.ui.iwiw.showSendLink('http://xy.xy/verify.php?email=xy@xy.hu&hash=aab3238922bcc25a6f606eb525ffdc56',this)" target="_blank">http://sztim.fw.hu/verify.php?email=szilkow@freemail.hu&hash=aab3238922bcc25a6f606eb525ffdc56valami megoldást tudnátok javasolni? Válaszotokat előre is köszönöm! Szép estét!
-
Lakers
tag
válasz
Speeedfire #5402 üzenetére
yes! a 000webhost.com-ot kerestem, kösz!
-
Speeedfire
félisten
Azt ki is hagytam, amit j0k3r! is írt tömbben tárolja az adatokat.
j0k3r! példájánál maradva:
http://pl.www.valami.hu/userek.php?userid=123
elérése a userek.php oldalon:$_GET['userid']
Mi a baj a magyar táhelyekkel?
Nálam az okhost.eu viszi a pálmát. 3gb ingyenes tár, htaccess, gyors elérés, több domain, mod_rewrite stb.
Külföldiből meg a 000webhost.com.
még több...De nem kerül sokba saját tárhely sem. newhostingnál és a nextarhelynél is ingyenes csak 1 domain kell hozzá.
.info első évre 1 USD
.hu meg évente is kb 2k HUF
Új hozzászólás Aktív témák
Hirdetés
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Gitáros topic
- A fociról könnyedén, egy baráti társaságban
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Milyen autót vegyek?
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Projektor topic
- Okos Otthon / Smart Home
- PlayStation 5
- Battlefield 2042
- További aktív témák...
- DJI Mavic 3 Pro Fly More Combo RC Pro - drón szett újszerű állapotban - Garancia +Care Refresh
- Samsung Galaxy S25 Ultra 12/256GB titánszürke garanciával
- Iphone 12 Black 64Gb független 87% akku
- LG 27 Odyssey 144Hz Gamer monitor
- 27% Számlával! HP Gaming! 16.1" IPS 144Hz / 7640HS / RTX 4060 / 16GB DDR5 / 512GB NVMe! BeszámítOK
- AKCIÓ! ASRock B550M R5 5600X 32GB DDR4 512GB SSD RTX 3060Ti 8GB Fractal Design Nano S 600W
- AKCIÓ! Lenovo ThinkVision L24i-10 24 FHD 60Hz 4ms monitor garanciával hibátlan működéssel
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
- Xiaomi Redmi Note 10 Pro 128GB Kártyafüggetlen, 1Év Garanciával
- Azonnali készpénzes nVidia RTX 3000 sorozat videokártya felvásárlás személyesen / csomagküldéssel
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest