Hirdetés
- GoodSpeed: Pillangóhatás: F billentyű meghibásodása -új gamer számítógépasztal
- Luck Dragon: Asszociációs játék. :)
- eBay-es kütyük kis pénzért
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Meggyi001: Eldugott helyek Párizsban, amiket jó eséllyel még nem láttál... 2. rész.
- btz: Internet fejlesztés országosan!
- Brogyi: CTEK akkumulátor töltő és másolatai
- LordAthis: RETRÓnia - RETRÓ Mánia - Úton van hozzám egy csodás történelmi darab!
- Viber: ingyen telefonálás a mobilodon
Új hozzászólás Aktív témák
-
Tele von Zsinór
őstag
válasz
Speeedfire
#5097
üzenetére
Nem csak a tinymce, sőt: az asztali szövegszerkesztők (word, OOo writer) is így viselkednek: enter = új bekezdés, shift+enter = sortörés.
-
zka67
őstag
válasz
Speeedfire
#5097
üzenetére
Csak ha két entert ütsz.
Hmmm... télleg. De a Shift-Enterrel BR-t szúr be. -
Speeedfire
félisten
válasz
Ősember
#5094
üzenetére
esetleg így?
$pos1=strpos($content,'<dd class="info">');
if($pos1 === 0)
{
$isAvailable=true;
}
else
{
$isAvailable=false;
return trim(substr($content,$pos1,3));
}szerintem a +22 miatt kicsúszik és ezért ahol keres ott már nincs semmi
amúgy a title és alt tageket így gondoltam:
<a href="http://mikulas.nap/mikulas-cukorka.php" title="Mikulás cukorkák rendelésre"/>cukorka rendelés</a>
<img src="http://mikulas.nap/mikulas-cukorka.png" alt="kék Mikulás cukorka" title="A kék Mikulás cukor csomagolása">szóval h a linkekhez legyen köze a szövegnek
-
Tele von Zsinór
őstag
válasz
Ősember
#5094
üzenetére
A dokumentáció szerint:
If length is given and is positive, the string returned will contain at most length characters beginning from start (depending on the length of string).
[...]
If length is given and is 0, FALSE or NULL an empty string will be returned.tehát nem számol nulladik karaktert, ha hármat akarsz visszakapni, akkor hármat írj oda.
A $contentben van valami? A $pos1 milyen értéket kap? Ha kiírod a trim(substr($content,$pos1,3)) értéket visszaadás helyett, mit kapsz?
-
Ősember
őstag
válasz
Speeedfire
#5090
üzenetére
az a baj hogy semmit
a $pos1 után azért kell 2, mert nulladik akraktert is számol, ezért a 2 lényegében 3 karaktert jelent, de ide mindegy milyen számot irok be, mert egész egyszerűen üresség lesz az eredmény, tehát semmit nem dob.sajnos nem én irtam ezt a kódot, ezért csak arra tudok következtetni, hogy a +22 arra kell, hogy a következő lépésben lehessen if-et használni
ez alapján dolgoztam
substr('abcdef', 0, 4); // ezt kell dobnia: abcdnálam:
(substr($content,$pos1,3);nem látom sajnos a hibát
-
Gyuri16
senior tag
& php-ban a referenciakat jeloli. [link]
ilyeneket ugy lehet googlen keresni, hogy beirod a jel nevet angolul, itt pl erre rakeresel: "php ampersand"
#5093:
nem pointerek, gondolom te is jol gondolod, csak biztonsag kedveert irom. fenti linken nezd meg a What References Are Not pontot -
SaNyEe
aktív tag
Sziasztok!
Elkezdtem írni a saját keretrendszerem, s most értem a get, post, cookie-k slasheléséhez.
Írtam egy rekurzív kódot amivel be tudom járni a szükséges tömböket.
Aztán persze nem működött.Weben elkezdtem kutakodni, s találtam egy igen hasonló megoldást mint a sajátom.
A függvény hívási pontján ezt találtam:&$változónév. Erről szeretnék kérdezni, hogy ez micsoda, idáig nemigen találkoztam ilyesmivel, s weben is viszonylag nehezen tudom emiatt keresni.
Ha valaki egy rövidke leírást tenne róla, h mit csinál v. már kész magyar, ha könnyen emészthető akkor akár angol leírást linkelne az jó volna.Előre is köszönöm.
-
Ősember
őstag
válasz
Tele von Zsinór
#5087
üzenetére
ha megszánnál egy kijavitott kóddal azt nagyon megköszönném, mert rajtam ez kifog
=== próbáltam már, de az nem hozott változást.
a helyzet az, hogy ezt a kódot csinálta nekem egy srác, akivel időközben megszakadt a kapcsolatom, ezért próbálom megjavitani a hibásan működő részeitSpeeedfire: igen, eljut

ez volt az eredeti kód:
$pos1=strpos($content,'<dd class="info">')+22;
if($pos1==22)
{
$isAvailable=true;
}
else
{
$isAvailable=false;
$pos2=strpos($content,'<a',$pos1);
return trim(substr($content,$pos1,($pos2-$pos1)));
}ez jól működik, viszont ez a <dd class="info">-tól a következő <a-ig szedi ki az összes tartalmat, de nekem ennek a tartalomnak csak az első 3 karaktere kéne
-
Speeedfire
félisten
válasz
Tele von Zsinór
#5085
üzenetére
már próbáltam ip-vel, domain névvel, semmi
most azon "dolgozok" h csinálok egy rss csatornát, amit a másikon beolvasok
Ősember: be megy amúgy az else ágba? írass ki minden egyes lépésnél valamit így látod mikor merre jár a ciklusodde lehet h a többiek tudnak rá valami okosabbat mondani
-
Tele von Zsinór
őstag
válasz
Ősember
#5077
üzenetére
Nyilván nem, mert a substr legfeljebb kettő karaktert fog visszaadni.
A +22-vel trükközést sem értem. Ha azért csinálod, mert a string legelején megtalálva mégis hamis lenne az ifed, akkor használd az ekvivalencia operátort (===), ha nem találja, a visszatérési értéke ekvivalens false-al, amúgy a találat helye.
Harmadrészt az $isAvailable változót hiába állítod, mert nem lesz elérhető a függvénytörzsön kívülről. -
Ősember
őstag
válasz
Speeedfire
#5084
üzenetére
sajnos a 3 = után is változatlan a helyzet

rel='nofollow', igy fogadta el
a termékleirás csak egy opcionális mező, oda szoktam néha beirni a gyártó oldalán a közvetlen a termékhez vezető linket, vagy ha van valami extra tudnivaló a termékkel kapcsolatban
title és alt beillesztve
ezeket pótolni fogom a többi oldalon is 
-
Tele von Zsinór
őstag
válasz
Speeedfire
#5080
üzenetére
A célszerver adatbázismotorjának beállításától függ. Ha engedik a külső kapcsolódást, akkor meg is vagy: localhost helyett a szerver címét írod be.
Ingyenes tárhelyekről nincs tapasztalatom, de egy megnézést megér. -
Speeedfire
félisten
válasz
Ősember
#5083
üzenetére
az if feltételnél 3 = jellel próbáld meg
tehát:
if($pos1 === 22)
illetve 1-2 észrevétel:
- a kimenő linkekhez rakd be a <a tagbe h :
rel="nofollow"
jobb gugli szempontból
- a termékleírás el van csúszva, vagy csak oda később megy szöveg?
- a linkeknél és a képeknél használd a title="szöveg" tageket, illetve a képeknél még az alt="szöveg" taget isezek inkább seo szempontból lehetnek jók
-
Ősember
őstag
válasz
Speeedfire
#5082
üzenetére
és igen
lemaradt az árfolyamnéző modul, nézd meg te is a linket
köszi szépen!a (#5077) hsz-ben leirtra esetleg valami?

-
Ősember
őstag
van még egy problémám, ha az oldalra linkről látogatok (link), akkor az árnál 0Ft szerepel, viszont ha a főoldalról navigálok, akkor minden ár kapásból jól látható. ez vajon mire vezethető vissza?

-
Speeedfire
félisten
üdv!
nos olyan gondom/problémám lenne, hogy megoldható-e valahogy az, hogy 1 adatbázis használom mondjuk a server1-en és a server2-ön lekérem a server1 adatbázisát?
ha jól tudom akkor az adatbázisokat csak csak localhost alatt lehet elérni külső tárhelyről nem
ingyenes tárhelyeken érdekelne a dolog, ahol ez nem egyszerű dologhogy lehetne ezt megoldani szerintetek?
-
zka67
őstag
válasz
Speeedfire
#5076
üzenetére
Napi 1-et tudsz regisztrálni

-
Ősember
őstag
hello
van egy lap, ahonnan információra van szükségem, mégpedig közvetlen egy bizonyos <dd class="info"> rész utáni 3 karakterre van szükségem. ez a kódom:$pos1=strpos($content,'<dd class="info">')+22;
if($pos1==22)
{
$isAvailable=true;
}
else
{
$isAvailable=false;
return trim(substr($content,$pos1,2));
}valamiért az az utolsó sor hibás lehet, mert nem dobja a 3 karaktert a return. nem jövök rá mi a baja.... valami ötlet? köszi előre is

-
Speeedfire
félisten
válasz
egyjotakaro2
#5075
üzenetére
ám a 000webhost is elég jó, ott fele akkor a tárhely mind az okshost-nál, viszont korlátlan domaint tudsz regelni 1 account alatt
-
egyjotakaro2
tag
válasz
Speeedfire
#5074
üzenetére
Köszi, majd át olvasom

Am kerestem már, mert az atw.hu szigorított az ftp elérésen, és külföldről nem tudok rá csatlakozni, de a p8.hu-nál mindig van valami problém...
-
Speeedfire
félisten
válasz
egyjotakaro2
#5073
üzenetére
akkor lehet más gond van
amúgy a p8-nál vannak sokkal jobb szolgáltatók is
pl okhost.eu -
egyjotakaro2
tag
válasz
Speeedfire
#5072
üzenetére
persze, egy komplett oldal volt/van fent rajta.FTP-re fel tudok menni, minden meg van.

-
Speeedfire
félisten
válasz
egyjotakaro2
#5071
üzenetére
töltöttél már fel index oldalt? amiatt írhat ki ilyet, bár nem igazán ismerem ezt a szolgáltatót
-
egyjotakaro2
tag
Sziasztok. P8.hu-s tárhelyem van, és 403-as hibát kapok amikor meg akarom nyitni az oldalt
orbiddenYou don't have permission to access / on this server. -ezt írja
Szerintetek mi lehet a gond? Vagy a tárhely üzemeltetőjénél van a hiba? Üdv Krisz 
-
válasz
Tele von Zsinór
#5068
üzenetére
Igen van jogom.
Speeedfire: Táblát akarok létrehozni, szóval nem kel/lehet kiválasztani. Amit beillesztettél, az benne van, csak ezt a sort másoltam ki.
-
Speeedfire
félisten
üdv!
a múltkor zka67 küldött egy filmes oldalt, gondoltam én is elkészítem a sajátomat
időközben gondoltam csinálok egy olyat h a filmekhez legrelevánsabb hasonló filmeket felsorolom a végén (lusta vagyok magam szerkeszteni)
annyit csinál h a tag-eket kezdi el lekérdezni és egy megadott mennyiség után listázza őket, ha nagyon kevés a cimke akkor töröl egyet a feltételből
kérdésem h mennyire bonyolítottam túl a dolgot? mert működni működik, csak ügye törekedni kell az egyszerűségre

ui: ez a sor senkit se tévesszen meg, csak azért 1 mert teszteltem h mire mennyit ír ki
if ( $lekerdezm >=1 ) { -
zka67
őstag
válasz
Fecogame
#5064
üzenetére
"localhost" a saját géped, ha azon fut a webserver és a mysql, akkor jó. Ha viszont egy tárhelyre töltöd fel, akkor már nem localhost, hanem egy IP címet kell megadnod neki.
A másik variáció szerint nincs jogod az adatbázis eléréséhez.
Javaslom a phpMyAdmin használatát, amíg azzal nem tudsz belépni az adatbázisba, addig valami bibi van.
-
Van ez a sor egy php install fájlban:
$con = mysql_connect("localhost","username","ittajelszo");
Ebben az első helyen localhost van, a második helyen a létrehozott felhasználó, a harmadik helyen pedig a jelszó, ez így helyes?


-
wis
tag
válasz
Speeedfire
#5060
üzenetére
Annyira azért nem érdekes

Végig egyszeres aposztrófot használsz, ráadásul így a $cimke sem helyettesítődik be.
Nullával osztás meg azért lesz, mert a % a maradékos osztás operátor, a php emiatt számot vár, át is alakítja a stringeket nullává... -
Speeedfire
félisten
válasz
Speeedfire
#5059
üzenetére
érdekes, hogy ha kicserélem ezt:
$hasonlocimke .= 'adatok.tags LIKE '%'.$cimke[$i].'%' ';
erre akkor már jó:
$hasonlocimke .= "adatok.tags LIKE '%$cimke[$i]%' ";
szóval mostmár biztos h én rontottam el valamit

-
Speeedfire
félisten
üdv!
ezzel a kis kóddal lenne gondom
$cimke = explode( ',', $row['tags']);
$cimkeo = count($cimke)-1;
$hasonlocimke = 'mysql_query("select * from adatok where ';
for ($i=0; $i <= $cimkeo; $i++ ) {
if ( $i== 0) {
$hasonlocimke .= 'adatok.tags LIKE '%'.$cimke[$i].'%' ';
}
else {
$hasonlocimke .= 'and adatok.tags LIKE '%'.$cimke[$i].'%' ';
}
}a ciklusban lévő adatok nem íródnak hozzá valami miatt, illetve valószínű h nem jól van megadva neki a "string", de csak nem jövök rá mi a gondja
illetve a ciklusban ilyen hibát ír ki:
Warning: Division by zero mind a 2 résznél
-
bena_butus
csendes tag
Köszönöm.
-
Tele von Zsinór
őstag
válasz
bena_butus
#5055
üzenetére
Létrehozok két DateTime objektumot, az elsőt a srác születési dátumára (ha jól értettem a te kódodból), a másikat paraméter nélkül, így az aktuális időt veszi fel értékül.
A harmadik sorban veszem a kettő különbségét, eredményül kapok egy DateInterval objektumot, aminek az értékét végül formázva kiírom. -
DeltaPower
addikt
válasz
bena_butus
#5055
üzenetére
mert akkor az mktime dokumentációja alapján 3 lesz az év paraméter értéke, így 2003-al számol az mktime
-
bena_butus
csendes tag
válasz
Tele von Zsinór
#5054
üzenetére
Uf. Hát ezt még nem teljesen értem, de azért köszi. Megpróbálok utánanézni, hogy mi micsoda, de tudsz egy pici magyarázatot is írni hozzá?
Amúgy a mktime-nál miért nem lehet 2007-et levonni az évből? -
Tele von Zsinór
őstag
válasz
bena_butus
#5053
üzenetére
<?php
$start = DateTime::createFromFormat("Y-m-d", "2007-07-06");
$end = new DateTime();
$diff = $start->diff($end);
echo $diff->format("%y ev %m honap %d nap\n");kimenete:
maerlyn@biliskner:~/tmp$ php tmp.php
3 ev 0 honap 22 napmegjegyzés: a DateTime::diff függvény csak php 5.3-tól kezdve létezik.
-
bena_butus
csendes tag
Sziasztok! Php-ból nagyon kezdő vagyok, úgyhogy ne küldjetek el nagyon meleg éghajlatra a kérdésemmel:
Egy nagyon egyszerűvel szerettem volna kezdeni, ki szerettem volna számoltatni, hogy hány éves, hónapos, és napos a fiam. A gond az, hogy az évet nem jól számolja. Konkrétan 2010-ből nem tud 2007-et levonni. 1900-at még igen, de pl. 1950-et már nem!
Itt a kódom:
<?php
$balazs = mktime(0,0,0,date("m")-7,date("d")-6,date("Y")-2007);
echo "Balázs " . date("Y", $balazs) . " éves, " . date("m", $balazs) . " hónapos, " . date("d", $balazs) . " napos.";
?>Azt írja, Balázs 2002 éves... Hol a hiba? Mi a megoldás?
Előre is köszi!
-
zka67
őstag
válasz
Tele von Zsinór
#5051
üzenetére
Ja, igazad van

-
pckownz
őstag
válasz
DeltaPower
#5049
üzenetére
body { } és
header_setup { } is megkapta az auto left-right-ot, most úgylátszik középen van minden felbontáson. Köszöntem a segítséget, még úgy is jövök.

-
pckownz
őstag
válasz
Speeedfire
#5047
üzenetére
Igen itt egy body{ } nevű rész. Itt ha margin:0 auto; -t adok meg, akkor marad a helyén.
Viszont ha margin-left: ; margin-right: ; és a left-et növelem, akkor betolja középre. Van olyan parancs amivel statikusan lehetne középre lőni? Most jelenleg 1024-alól vagyok, és ami nekem közép, az nem hinném, hogy az 1440*x felbontáson is közép lenne. -
Speeedfire
félisten
-
pckownz
őstag
Sziasztok!
E107-tel bohóckodok, de van egy kis problémám.
Az egész weboldalt szeretném középre igazzítatni, mert jelenleg balra van zárva az egész.
Keresgéltem a theme.php -ban illetve a css-ben de nem találtam erre utaló sorokat.
Szóval ötleteket szeretnék kérni
-
zka67
őstag
válasz
Speeedfire
#5043
üzenetére
Csak ennyit módosíts és működni fog:
while (isset($_FILES['media']['name'][$i])) {
Tele von Zsinór, bocs hogy beleszólok, de a media->error->i -re is szüksége van.
-
Tele von Zsinór
őstag
válasz
Speeedfire
#5043
üzenetére
De nem azt ellenőrzöd, amit kéne.
while ($_FILES['media']['name'][$i]) {
Azt mondtad, ide írja a hibát, mégpedig azért, mert nem létezik $i indexű elem az adott tömbben. Ennek a létezését nem ellenőrzöd.
Tényleg foreach-csel járnál a legjobban, az garantálja, hogy minden kulcson végigmenj. Ha mindenképp while-ozni akarsz, akkor meg while(list($k, $v) = each($_FILES["media"]["name"])), persze reset($_FILES["media"]["name"] után. -
Speeedfire
félisten
válasz
Tele von Zsinór
#5042
üzenetére
ellenőrzöm csak azt nem írtam ki ide

if (isset($_FILES['media'])) {
$i = 0;
while ($_FILES['media']['name'][$i]) {
if ($_FILES['media']['error'][$i] == 0){
$szeles = 400;
$magas = 300;
$datum = date("Ymd");
$rand = strtolower(random());
$fn = 'kepek/'.$datum.'-'.$rand.'.'.end(explode('.', strtolower($_FILES['media']['name'][$i])));
$fn2 = $datum.'-'.$rand.'.tn.'.end(explode('.', strtolower($_FILES['media']['name'][$i])));
img_resize($_FILES['media']['tmp_name'][$i],$szeles,"kepek/",$fn2,$magas);
move_uploaded_file($_FILES['media']['tmp_name'][$i],$fn);
}
++$i;
}
// automatikusan tovább léptet 5 mp múlva
//header( "refresh:5;url=?oldal=nezet&id=".$id."");
echo "<div id=\"siker\"><p>Sikeres feltöltés !<br />";
echo "Tovább ...</p></div>";
} -
Tele von Zsinór
őstag
válasz
Speeedfire
#5041
üzenetére
Mert nem ellenőrzöd, hogy van-e olyan kulcs (mondjuk isset-tel), hanem rögtön az értékét kéred le és értékeled ki a feltételben. Vagy tedd isset()-be, vagy használj foreach-t a kézzel növelgetés helyett.
-
Speeedfire
félisten
ennél a ciklusnál miért dob vissza undefined offsetet?
arra a sorra ahol a while van?$i = 0;
while ($_FILES['media']['name'][$i]) {
if ($_FILES['media']['error'][$i] == 0){
$szeles = 400;
$magas = 300;
$datum = date("Ymd");
$rand = strtolower(random());
$fn = 'kepek/'.$datum.'-'.$rand.'.'.end(explode('.', strtolower($_FILES['media']['name'][$i])));
$fn2 = $datum.'-'.$rand.'.'.end(explode('.', strtolower($_FILES['media']['name'][$i])));
img_resize($_FILES['media']['tmp_name'][$i],$szeles,"kepek/tn/",$fn2,$magas);
move_uploaded_file($_FILES['media']['tmp_name'][$i],$fn);
}
++$i;
} -
Speeedfire
félisten
kicsi off
durva mit lehet kezdeni a php-val

[link] -
Tele von Zsinór
őstag
Nagyban meg tudják egyszerűsíteni az életet (mondjuk speciális esetekben nehezíteni is
), én különösen azt szeretem, ahogy az objektumok közötti kapcsolatokat kezelik.Propelt használok most már három éve, eleinte önmagában, utóbbi időben pedig mint a symfony modell rétege. Doctrine-nal csak kísérletezgettem, de a propel jobban tetszett.
Mindkettő elég jól dokumentált, és a propelt is újra aktívan fejlesztik. Javaslom, nézd meg mindkettőt, és használd a szimpatikusabbat. -
Frigo
őstag
---dupla---
-
Frigo
őstag
PHP ORM-ek közül melyiket érdemes használni (Propel ,Doctrine...) ? Illetve mikor érdemes egyáltalán ORM-et használni ?
-
Tele von Zsinór
őstag
A . a stringösszefűzés-operátor, nem is működik más típusra.
A mysql_query hívás nem tömböt ad vissza, hanem egy erőforrás-mutatót, amivel szépen a mysql_fetch_* függvények segítségével tudod megkapni az eredményeket.
Először le kell kérned az összes kapott rekordot akár egy tömbbe (végülis minek a kettő), aztán a shuffle hívás összekeveri őket. Innentől meg egy foreach-csel egyszerű kiírni.
-
biker
nagyúr
válasz
Tele von Zsinór
#5034
üzenetére
üdv
a query ok, de én .-al próbáltam, de akkor már nem tudram kinyerni, mert "Resource"-ot írt ki, nem a tömböt adta vissza, vagy üreset.tehát előbb mysql_fetch_array, és utána összeadom őket?
vagy előbb összeadom és utána fetch-array? -
biker
nagyúr
lenne két hasonló tábla. mindkettőben termékek egy webshophoz. technikai okokból kettő, mert egyik auto frissítésen van
mikor lekérem az adatokat belőlük, a két tömböt hogy tudom esetleg összefűzni, hogy egybekeverve lehessen kilistzni?
nem akar menni a két query eredmény összefűzése, hibás a listázás
valamit bénázok, vagy mi? -
zka67
őstag
válasz
Speeedfire
#5030
üzenetére
Ha engem kérdeznél inkább ne tedd

Ehhez mit szólsz?
$sor = '';
if (isset($_GET['page'])) {
$sor = ($_GET['page']-1) * 10;
if ($sor < 1) $sor = 1;
} -
Speeedfire
félisten
válasz
Tele von Zsinór
#5024
üzenetére
ez így mennyire szép/elegáns?

if ((isset($_GET['page'])) and ($_GET['page'] == 1)){
$sor = 1;
}
elseif (empty($_GET['page'])) {
$sor = '';
}
else {
$sor = ($_GET['page'])-'1'.'0';
}a $sor értéke az 'ol start' értéke
-
Sk8erPeter
nagyúr
válasz
fordfairlane
#5028
üzenetére
Köszi szépen!

-
fordfairlane
veterán
válasz
Sk8erPeter
#5027
üzenetére
A belinkelt oldalon a felhasználói kommentekben ott vannak a példák. A stripslashes-t akkor kell meghívni, ha ez az opció be van kapcsolva. Ezt le lehet kérdezni a get_magic_quotes_gpc()-vel.
Itt egy példa:
<?php
if (get_magic_quotes_gpc()) {
function stripslashes_gpc(&$value)
{
$value = stripslashes($value);
}
array_walk_recursive($_GET, 'stripslashes_gpc');
array_walk_recursive($_POST, 'stripslashes_gpc');
array_walk_recursive($_COOKIE, 'stripslashes_gpc');
array_walk_recursive($_REQUEST, 'stripslashes_gpc');
}
?> -
Sk8erPeter
nagyúr
válasz
fordfairlane
#5026
üzenetére
Már PHP 5.3.0-tól is deprecated, a történelmi előzmény érthető is, meg nem is, de ez nem változtat az eredeti kérdésen.
Továbbra sem jut eszembe más, mint bent hagyni a mysql_real_escape_string() fv.-t, mert én adatbázisba töltök fel, de mivel a magic_quotes_gpc beállítás továbbra is úgy marad, először el kellene tüntetni belőle az escape-elt karaktereket, hogy ne legyen duplán escape-elve... Később egyszerűbb lenne a stripslashes()-t eltávolítani, mint most kihagyni valamelyik lépést (pl. a mysql_real_escape_string()-et), ami amúgy sem lenne praktikus szerintem. Nem? 
Szerk.: látom miközben írtam a hsz.-t, szerkesztetted a sajátodat.

"a stripslashes-t kell feltételes módban és tömbre rekurzívan meghívni"
Hogy érted, hogy "feltételes módban"? Mit kellene vizsgálni?Amúgy lehet, hogy késő van, de most az sem esik le, hogy tömbre miért rekurzívan? Pl. sima foreach-csel bejárom. Vagy lehet, hogy félreértelek.
-
fordfairlane
veterán
válasz
Sk8erPeter
#5025
üzenetére
Akkor magyarul ilyen esetben csak az a megoldás, hogy ha automatikusan escape-elődik pl. az összes $_POST érték, és ezzel tisztában vagyunk, akkor először alkalmazzuk a stripslashes() fv.-t, majd a mysql_real_escape_string() fv.-t az adatbázisba való feltöltéshez (amit amúgy is kellene, csak a stripslashes() nélkül már duplán lenne escape-elve)?
A megoldás az lesz, hogy PHP 6-ban már eleve nem is lesz ilyen opció, végleg eltűnik, akárcsak a register_globals.
Csak mert nálam is van egy hasonló probléma, de a mysql_real_escape_string() fv.-t nem szeretném elhagyni, mert ki tudja, később nem lesz-e PHP-verzió-váltás vagy egyéb módosítás (pl. az általad említett opció kikapcsolása).
Annak idején mikor a PHP-ba belekerült ez az automatizmus, az egyszerű használhatóság volt a jelszóé s a biztosnág, mivel a kiescapeletlen stringek együtt a register_globalssal azt eredményezte, hogy tömegével készültek a könnyen feltörhető PHP oldalak. Azonban az alapelv eleve hibás. Azt feltételezi, hogy ha kapsz egy stringértéket $_GET, $_POST vagy $_COOKIES-en keresztül, azt te szinte minden esetben adatbázisműveletre használod fel. Régebben talán igaz lehetett ez, amikor a PHP kezdetleges volt, egyetlen előnye az egyszerű használhatóság volt, de ma már a PHP rengeteg dolgot tud, ami nem adatbáziskezeléssel kapcsolatos.
Egyébként sajnos így van, ha van rá esély, hogy a magic_quotes_gpc be lesz kapcsolva a scripted felhasználása helyén, akkor a stripslashes-t kell feltételes módban és tömbre rekurzívan meghívni, mielőtt bármi műveletet hajtasz végre a stringparaméterekkel.
-
Sk8erPeter
nagyúr
válasz
fordfairlane
#5021
üzenetére
Akkor magyarul ilyen esetben csak az a megoldás, hogy ha automatikusan escape-elődik pl. az összes $_POST érték, és ezzel tisztában vagyunk, akkor először alkalmazzuk a stripslashes() fv.-t, majd a mysql_real_escape_string() fv.-t az adatbázisba való feltöltéshez (amit amúgy is kellene, csak a stripslashes() nélkül már duplán lenne escape-elve)?
Csak mert nálam is van egy hasonló probléma, de a mysql_real_escape_string() fv.-t nem szeretném elhagyni, mert ki tudja, később nem lesz-e PHP-verzió-váltás vagy egyéb módosítás (pl. az általad említett opció kikapcsolása).
Így elsőre gánynak hangzik, de nem jut eszembe jobb megoldás. -
Tele von Zsinór
őstag
válasz
Speeedfire
#5023
üzenetére
<ol start="42">
-
Speeedfire
félisten
ha egy tartalom lapozható, gondolok itt arra, hogy 40 bejegyzés van és én lebontom őket 5-ös csoportokra majd számozni szeretném
előbb
<ol><li></li></ol>
tagekkel akartam, de ugye nullázódik ugye minden egyes új oldalnál, aztán gondoltam behozok egy változót, de azzal is nullázódikezt hogy lehet rendesen megoldani?

-
Speeedfire
félisten
válasz
fordfairlane
#5021
üzenetére
csak php-val tudtam megcsinálni, a php.ini--hez nem férek hozzá, a htaccess-t meg nem fogadta el
a segítséget meg köszönöm
-
fordfairlane
veterán
válasz
Speeedfire
#5020
üzenetére
Ilyen akkor történik, ha a PHP-ban be van kapcsolva a magic_quotes_gpc opció. Ilyenkor a PHP az összes $_GET, $_POST, $_COOKIES értéket magától kiescaspeli. Érdemes kikapcsolni, illetve ha ez nem járható út, akkor eltávolítani az automatikusan bekerülő backslasheket, mert nem biztos, hogy egyből adatbázisba kerülnek ezek az értékek, hiszen sokszor van form esetében a bevitt adatok kiírása még adatbázisba írás előtt, hiba vagy adatmegerősítés esetén pl..
Itt van egy példa, hogyan lehet eltávolítani, de a felhasználói kommentekben is akadnak hasznos tanácsok:
http://www.php.net/manual/en/security.magicquotes.disabling.php
-
Speeedfire
félisten
válasz
fordfairlane
#5019
üzenetére
Pedig csak ennyit írta a mezőbe:
'RED'
de az adatbázisba, ahogy te is írtad már ez került:
\'RED\', holott semmi extra nincs az adatok beírásánál, csak h mysql_real_escape_string
-
fordfairlane
veterán
válasz
Speeedfire
#5017
üzenetére
A mysql_real_escape_string-et adatbázisba beírásnál kell használni, de magába az adatmezőbe backslashek nélkül kell, hogy bekerüljön a tartalom. Ha kiolvasásnál plussz backslash karakterek kerülnek elő, akkor eleve nem jól lett beírva.
-
DeltaPower
addikt
válasz
Speeedfire
#5017
üzenetére
-
Speeedfire
félisten
hogy lehet megoldani, h amit a mysql_real_escapce_string kiescapelt azt rendesen jelenjen meg a kimenetei oldalon?
tehát ehelyett :
\'RED\'
ez
'RED'
-
Speeedfire
félisten
válasz
Tele von Zsinór
#5015
üzenetére
már megijedtem h ezt sem tudtam leírni normálisan

én meg már szó szerint alig látok de ezt már azért is befejezem
-
Tele von Zsinór
őstag
válasz
Speeedfire
#5014
üzenetére
Késő este ez van.
Rendben, csak az üres blokk, meg a közvetlen alatta levő sor behúzása miatt úgy nézett ki, hogy elnézted.
-
Speeedfire
félisten
válasz
Tele von Zsinór
#5013
üzenetére
ennyire nem figyelnék oda, h mit írok?

az else ágon nem kell semmi sem nekem, ha a $mit2 nincs deklarálva akkor márcsak azt kell a végéhez fűzni h mi szerint rendezze. vagy tévednék?

-
Tele von Zsinór
őstag
válasz
Speeedfire
#5012
üzenetére
.=, nem pedig . =, és az else ágadat gondold át megint.
-
Speeedfire
félisten
ezzel mi a baja?

if (isset($mit) and isset($search_text)) {
$sql="SELECT * FROM `film_adatok` where
($mit LIKE '%$search_text%' )";
if (isset($mit2)) {
$sql . = "and (".$mit2." LIKE '%search_text%' )";
}
else {}
$sql . = "ORDER BY `film_adatok`.`id` DESC"
};erre a sorra panaszkodik, h kódolási hiba van:
$sql . = "and (".$mit2." LIKE '%search_text%' )";
-
Speeedfire
félisten
válasz
Tele von Zsinór
#5010
üzenetére
a te scriptedből kiindulva sikerült megoldani a gondot

köszönöm a segítésget

function img_resize( $tmpname, $size , $save_dir, $save_name, $maxisheight )
{
$save_dir .= ( substr($save_dir,-1) != "/") ? "/" : "";
$gis = getimagesize($tmpname);
$type = $gis[2];
switch($type)
{
case "1": $imorig = imagecreatefromgif($tmpname); break;
case "2": $imorig = imagecreatefromjpeg($tmpname);break;
case "3": $imorig = imagecreatefrompng($tmpname); break;
default: $imorig = imagecreatefromjpeg($tmpname);
}
$x = imagesx($imorig);
$y = imagesy($imorig);
if(($gis[0] <= $size) and ($gis[1] <= $maxisheight))
{
$aw = $x;
$ah = $y;
}
elseif (($gis[1] >= $gis[0]) and ($size<$gis[0])) {
$aw=ceil($size/$gis[1]*$gis[0]);
$ah=$size;
}
elseif (($maxisheight<$gis[1]) and ($gis[0] >= $gis[1])) {
$ah=ceil($maxisheight/$gis[0]*$gis[1]);
$aw=$maxisheight;
}
$im = imagecreatetruecolor($aw,$ah);
if (imagecopyresampled($im,$imorig , 0,0,0,0,$aw,$ah,$x,$y))
if (imagejpeg($im, $save_dir.$save_name))
return true;
else
return false;
} -
Tele von Zsinór
őstag
válasz
Speeedfire
#5009
üzenetére
static public function resizeAndMove($from_path, $to_path, $max_width, $max_height)
{
@ini_set("memory_limit", "128M");
$image_info = getImageSize($from_path);
switch ($image_info['mime']) {
case 'image/jpeg': $o_im = imageCreateFromJPEG($from_path); break;
//add more if needed
default:
return false;
}
$o_wd = imagesx($o_im) ;
$o_ht = imagesy($o_im) ;
if ($o_ht >= $o_wd) {
if ($o_ht > $max_height) {
$lamda = $max_height / $o_ht;
} else {
$lamda = 1;
}
} else {
if ($o_wd > $max_width) {
$lamda = $max_width / $o_wd;
} else {
$lamda = 1;
}
}
$t_ht = round($lamda * $o_ht);
$t_wd = round($lamda * $o_wd) ;
$t_im = imageCreateTrueColor($t_wd,$t_ht);
imageCopyResampled($t_im, $o_im, 0, 0, 0, 0, $t_wd, $t_ht, $o_wd, $o_ht);
imagePNG($t_im, $to_path );
imageDestroy($o_im);
imageDestroy($t_im);
} -
Speeedfire
félisten
lehet hülye kérdés, de h lehet képet úgy átméretezni, hogy minden irányból a maximum méretig mehessen?
szóval megadom neki h 640*480 és egyik fele se legyen nagyobb?
az alábbi kóddal szenvedek de sehogy sem jön össze:
function img_resize( $tmpname, $size , $save_dir, $save_name, $maxisheight )
{
$save_dir .= ( substr($save_dir,-1) != "/") ? "/" : "";
$gis = getimagesize($tmpname);
$type = $gis[2];
switch($type)
{
case "1": $imorig = imagecreatefromgif($tmpname); break;
case "2": $imorig = imagecreatefromjpeg($tmpname);break;
case "3": $imorig = imagecreatefrompng($tmpname); break;
default: $imorig = imagecreatefromjpeg($tmpname);
}
if ($size<$gis[0])
{
$ah=ceil($size/$gis[0]*$gis[1]);
$aw=$size;
}
if ($maxisheight<$gis[1])
{
$aw=ceil($maxisheight/$gis[1]*$gis[0]);
$ah=$maxisheight;
}
$im = imagecreatetruecolor($aw,$ah);
if (imagecopyresampled($im,$imorig , 0,0,0,0,$aw,$ah,$x,$y))
if (imagejpeg($im, $save_dir.$save_name))
return true;
else
return false;
}mindig csak a magasságig nézi, a többit figyelmen kívül veszi
-
Speeedfire
félisten
válasz
Tele von Zsinór
#5007
üzenetére
ismét köszönöm

-
Tele von Zsinór
őstag
válasz
Speeedfire
#5006
üzenetére
Filenév generálásakor str_pad.
-
Speeedfire
félisten
a múltkor zka67 kisegített egy kóddal
az lenne a kérdésem h lehet megoldani azt h a számláló ne 1 karakteres legyen, hanem 2
gondolok itt arra, hogy ne azt írja h 2 hanem 02, mert 10 fájl feltöltése után már kicsit zavaró kiíráskor, hogy nem a megfelelő sorrendben írja ki -
Speeedfire
félisten
válasz
DeltaPower
#5001
üzenetére
ezt nem tudtam

köszi a segítséget
-
Tele von Zsinór
őstag
válasz
vakondka
#5002
üzenetére
Igen, de az az igazi, ha csinálsz egy tömböt a user által elfogadott nyelvekkel, prioritási sorrendben, majd megnézed, melyik a legkorábbi eleme, ami a másik tömbben is benne van, ami meg az oldalad által támogatott nyelveket tárolja. Ha egyik sincs, akkor meg az oldalad nyelveinek első eleme a default.
-
vakondka
őstag
válasz
Tele von Zsinór
#4999
üzenetére
Akkor mégsem írtam akkora hülyeséget...

Igazad van, akinek magyar böngészője van az tuti magyarul szeretné látni a weboldalt
Szerintem ha benne van valahol hogy "hu" akkor mindent leegyszerűsítve:
<?php
$lang = getenv('HTTP_ACCEPT_LANGUAGE');
if (strstr($lang,'hu')) {
echo 'Ez magyar !';
}
else {
echo 'Ez nem magyar !';
}
?>múkodj!

-
DeltaPower
addikt
válasz
Speeedfire
#5000
üzenetére
includenél nem adunk át GET változót!

beállítod pl. hogy $pont=5; includolod a fájlt, és látni fogja a változót.
Új hozzászólás Aktív témák
- GoodSpeed: Pillangóhatás: F billentyű meghibásodása -új gamer számítógépasztal
- Samsung Galaxy S24 FE - később
- Samsung Galaxy S23 Ultra - non plus ultra
- Luck Dragon: Asszociációs játék. :)
- Kompakt vízhűtés
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- S.T.A.L.K.E.R. 2: Heart of Chornobyl
- AMD GPU-k jövője - amit tudni vélünk
- Háztartási gépek
- eBay-es kütyük kis pénzért
- További aktív témák...
- Acer 15,6",Intel(2,58Ghz)8-16GB RAM,akár 1TB SSD,jó akku,jó állapot
- ThinkPad 15,6",core i3 6100u(4x2,3Ghz)IntelHD VGA,8-16GB RAM,SSD,Jó akku,nagyon szép állapot
- Apple iPhone 12 Mini 128 GB Fekete 1 év Garancia Beszámítás Házhozszállítás
- Xiaomi Poco F7 Pro 512GB/12GB RAM Black, Bontatlan, Új, 0 Perces, Fekete, 1 Év Garancia
- Intel Core i7-10700 8-Core 2.9GHz LGA1200 (16M Cache, up to 4.80 GHz) Processzor!
- MacBook felvásárlás!! MacBook, MacBook Air, MacBook Pro
- Apple iPhone 11 128GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! ASRock B450M R5 3500X 16GB DDR4 512GB SSD RTX 3050 8GB GameMax STORM Black EVGA 600W
- Telefon felvásárlás!! iPhone 13 Mini/iPhone 13/iPhone 13 Pro/iPhone 13 Pro Max
- Lenovo ThinkPad T14 Gen1 Intel i5-10310U
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Promenade Publishing House Kft.
Város: Budapest


a $pos1 után azért kell 2, mert nulladik akraktert is számol, ezért a 2 lényegében 3 karaktert jelent, de ide mindegy milyen számot irok be, mert egész egyszerűen üresség lesz az eredmény, tehát semmit nem dob.
=== próbáltam már, de az nem hozott változást.


lemaradt az árfolyamnéző modul, nézd meg te is a linket
köszi szépen!








