Hirdetés
- Bemutatkozott a Poco X7 és X7 Pro
- Samsung Galaxy A52s 5G - jó S-tehetség
- Android 16-ra nyitott az egyik legmenőbb csukható
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Dupla kamerával menekülne az iPhone Air a kaszától
- iPhone topik
- Megtartotta Európában a 7500 mAh-t az Oppo
- Google Pixel topik
Új hozzászólás Aktív témák
-
Tele von Zsinór
őstag
válasz
Speeedfire
#5321
üzenetére
Tegyél idézőjelet minden érték köré, lásd `mezőnév` = "érték", azt látom, legalább a mysql_real_escape_string() hívás megvan. Számok köré is, ha a felhasználótól kapod.
-
nuendo
tag
válasz
Speeedfire
#5318
üzenetére
van egy jó kis oldal ilyen forráskódelemző....csak sajna nem tom a címét..este othon leszek és már tudni fogom, de létezik ilyen!!

-
Tele von Zsinór
őstag
válasz
Speeedfire
#5318
üzenetére
Első blikkre rögtön gyanús, hogy nincsenek idézőjelek a string értékeid körül. Mutasd a queryt, ami a hibát okozza.
-
biker
nagyúr
válasz
Speeedfire
#5313
üzenetére
pedig hasonlóan csinálnám én is
-
nuendo
tag
válasz
Speeedfire
#5313
üzenetére
a lényeg először is hogy felejts el azt a html táblázatot, mert ha dinamikusan akarsz bele iratni dolgokat..akor majd a php print vagy echo-ba ird ki!
-
biker
nagyúr
válasz
Speeedfire
#5311
üzenetére
ha nem mondod el mi kell, hogy segítsek?
-
biker
nagyúr
válasz
Speeedfire
#5309
üzenetére
amennyre értem, mit akarsz, lehet hát.
-
Speeedfire
félisten
válasz
Speeedfire
#5304
üzenetére
stornó

-
Gyuri16
senior tag
válasz
Speeedfire
#5290
üzenetére
igen, az jo lesz, de masodik parameternek ENT_QUOTES-t valaszd, kulonben a ' jeleket nem konvertalja. harmadik parameternek megadhatod neki a kodolast is (ezzel is lehet trukkozni, pl googlenak volt olyan xss sebezhetosege ami akkor jelentkezett, ha a a tamado string utf-7es volt)
persze a paranoiasok azt mondjak, hogy blacklist helyett inkabb whitelistet hasznalj, tehat mindent szurj ki, amit nem akarsz hasznalni (pl id tipikusan csak szam lehet, akkor egyszerubb megmondani, hogy minden a szamokon kivul rossz)
-
pumatom
aktív tag
válasz
Speeedfire
#5278
üzenetére
Köszi!
Üdv!
-
Gyuri16
senior tag
válasz
Speeedfire
#5287
üzenetére
ok ez igy jo is, viszont attol meg sebezheto a kod. ha egy jol osszerakott url-t elkuld egy tamado neked amikor be vagy jelentkezve (es te rakattintasz), akkor el tudja erni, hogy a te jogaiddal fusson le script az oldalon. ezzel pedig csunya dolgokat lehet elkovetni - ellopni a session cookiet, kitolteni valamilyen formot az oldalon es elkuldeni.. cross site scriptingnek hivjak ezt a fajta tamadast, es elegge elterjedt (es igen, tamadjak is)
-
Gyuri16
senior tag
válasz
Speeedfire
#5285
üzenetére
hat akkor meg plane biztonsagosra kell csinalni

szerintem jo megszokni, hogy minden bemenetet ellenorizz. ha ezt csak egy oldalon hasznalod, es rajtad kivul senki se latja a kodot, akkor valoszinuleg senki se fogja megtamadni, de minek otthagyni egy potencialis veszelyforrast, ha egyszeruen ki lehet iktatni. -
Gyuri16
senior tag
válasz
Speeedfire
#5279
üzenetére
latom a problema megoldodott, de egy jotanacs: sose irass ki ellenorzes nelkul olyan szoveget ami a felhasznalotol jon (konyvtar valtozo). specialis charaktereket szurd ki/ konvertald at html jelekre (leginkabb ezek: < > " ' )
-
nuendo
tag
válasz
Speeedfire
#5281
üzenetére
fő hogy ne add fel!
-
L3zl13
nagyúr
válasz
Speeedfire
#5279
üzenetére
Összehasonlítottad a szerver által visszaküldött forrást azzal amit kapni szeretnél?
Az ilyen visszaechózott HTML/javascript dolgoknál elég gyakori, hogy valahol elnéztél egy idézőjel escape-elést, vagy stringbe ki-be lépést és aztán bár nincs hibaüzenet, a böngészőnek küldött kód nem az amit te hiszel.
-
L3zl13
nagyúr
válasz
Speeedfire
#5275
üzenetére
Törölve. Valamit elnéztem.
-
Speeedfire
félisten
válasz
Speeedfire
#5270
üzenetére
ismét kiderült mennyire figyelmetlen vagyok

első sor után nem volt lezárás ;
-
nuendo
tag
válasz
Speeedfire
#5266
üzenetére
igen, ahogyan speeedfire is irja, és ahol nem azt az értéket irja ki amire te vártál, ott a hiba

-
L3zl13
nagyúr
válasz
Speeedfire
#5266
üzenetére
Beszúrsz echo-kat és kiiratod a változók értékeit, összefűzött stringet amiket később használsz.
-
ArchElf
addikt
válasz
Speeedfire
#5264
üzenetére
Akkor valami apró hiba lehet... Végéről nem marad le a "/" ?
Hogy hívod meg közvetlenül? Debugolva jónak tűnik, az összefűzött string?Amúgy én ezt a string szintaktikát jobban szeretem (kicsit jobban átlátható, de csak akkor működik, ha nincs array elem hivatkozás):
"Link: http://linkek.tothszabi.info/$webcimen-$sorszam"AE
-
ArchElf
addikt
válasz
Speeedfire
#5262
üzenetére
De.
Nem lehet, hogy az a hasonló, csak hasonló ehhez, és van benne valami hiba?
Mi nem akar működni benne?AE
-
hege01
tag
válasz
Speeedfire
#5247
üzenetére
Köszi, próbálkozom. Ha elakadok majd jövök segítségért kuncsorogni.

Üdv.
-
Speeedfire
félisten
válasz
Speeedfire
#5250
üzenetére
meg is lett a hiba, a parse_str() ezek szerint nem teljesen úgy működik ahogy gondolom

a bekuld.php oldalra beillesztettem ezt:
if (isset($mi)) {
$_GET['mi'] = $mi;
}Így megfelelően működik.
-
zka67
őstag
válasz
Speeedfire
#5248
üzenetére
Nem nagyon követtem, hogy mit csináltok, de valami szúrja a szemem:
A 'bekuld.php&mi=2' szerintetek jó? Mert szerintem így lenne helyes:
bekuld.php?mi=2
-
hege01
tag
válasz
Speeedfire
#5244
üzenetére
Szia,
Akkor leírnám hogy mit szeretnék valójában.
Van egy weboldal amit én szoktam karbantartani, frissíteni stb., egy egyszerű HTML lap.
Most ki kéne alakítani egy hírlevelet az oldalon, aki akar az megadja az e-mail címét és akkor kap hírlevelet az akciókról, termékekről stb.
Lényegében erről lenne szó.
Én is nézelődtem és ezt találtam:
[link]Nem tudom hogy a Te általad linkelt egyszerűbb e mint ez.
Mindenesetre köszönöm a segítséged.Üdv.
-
biker
nagyúr
válasz
Speeedfire
#5244
üzenetére
ok, így működik, de alapesetben hibát dob, én meg nem tudhattam, te mit állítgattál el

-
biker
nagyúr
válasz
Speeedfire
#5233
üzenetére
értem, de az a link, hogy fileneve.php&valami=valami az nem fog jó lenni, mert az első jel az ?, után minden &
-
hege01
tag
válasz
Speeedfire
#5237
üzenetére
Hi,
Nagyon köszönöm a gyors választ.
Van egy oldal amire szeretnék egy hírlevél feliratkozási lehetőséget rakni, tehát nem konkrét mail címekre szeretném a hírlevelet küldeni. Kész, szabadon felhasználható megoldások érdekelnek.
Én nem vagyok annyira otthon a program írásban mint ti.
Nem tudom így menni fog e?Köszi
-
Gergello
addikt
válasz
Speeedfire
#5239
üzenetére
Bele kell azért gondolni, hogy mire kell. Én olyan 30-40k hírlevelet küldök ki egy hónapban, 10k-s bontásban. Arra nem biztos, hogy érdemes saját megoldást írni. Biztos vannak kész megoldások is, én mondjuk egy joomla komponenst használok.
Pont ezt miatt a sok hírlevél miatt gázos a tárhely választás...
-
Gergello
addikt
válasz
Speeedfire
#5237
üzenetére
Leiratkozásra érdemes gondolni. Egy flag rá az adatbázisban.
-
Speeedfire
félisten
válasz
Speeedfire
#5233
üzenetére
nah! közben rájöttem
a feltöltésben ' között volt, ezt lecseréltem " és most így jó


x123456: egyszerű júzer error volt
-
x123456
aktív tag
válasz
Speeedfire
#5231
üzenetére
Nekem az az & jel gyanús... nem lehet, hogy az adatbáziskezelőd megpróbálja az &tipus-t makro változóként értelmezni?
-
biker
nagyúr
válasz
Speeedfire
#5231
üzenetére
mondjuk a tartalom.php után az első jel az kérdőjel lenne??

-
vzs
tag
válasz
Speeedfire
#5227
üzenetére
Egyszerű a dolog: a szerkesztő oldal forrásában találsz egy ilyen sort:
external_link_list_url : "js/link_list.js",
external_image_list_url : "js/image_list.js",Írd át a hivatkozott filet .php-ra és a .js fileban található módon listáztasd ki a kép fileokat egy könyvtárból a képekhez.
A linklistát pedig az adatbázisból listáztasd.
Én külön képfeltöltő programot írtam hozzá, ami nem függ össze a Tinymce-vel, külön oldalon tudok képeket feltölteni egy mappába, ezeket listázom a szerkesztőbe a fenti módon.
Tanulmányozd a szerkesztő forrását, mást is lehet így listázni.
-
Gergello
addikt
válasz
Speeedfire
#5222
üzenetére
Hirtelen tetszik, csak az ijeszt meg, hogy ingyenes.

Nekem kicsit para, komoly céges holnapot rápakolni.
-
DeltaPower
addikt
válasz
Speeedfire
#5222
üzenetére
http://www.dreamhost.com/
mi most ezt próbáltuk ki és elég jó. -
DeltaPower
addikt
válasz
Speeedfire
#5218
üzenetére
igen, csak idézőjelbe kell tenni a színeket
-
L3zl13
nagyúr
válasz
Speeedfire
#5216
üzenetére
Nem hiszem, hogy gond lenne 10 inserttel, de szerintem elegánsabb és gazdaságosabb 1 inserttel megoldani.
Ha ciklusban áll össze, hogy mit kell feltölteni, akkor a cikluson belül csak a query stringet adogasd össze és a ciklus után egyszerre töltsd fel az egészet.
insert into tabla (oszlop1, oszlop2, oszlop3) values (érték1,érték2,érték3) ,(érték_a,érték_b,érték_c),...,(érték_x,érték_y,érték_z)
-
DeltaPower
addikt
válasz
Speeedfire
#5213
üzenetére
filemtime()
(ha távoli tartalom módosítási dátumát akarod lekérdezni, a user kommentek közt vannak rá példa scriptek)fájlneveket (elérési úttal, url-el stb) és dátumokat letárolod adatbázisba és azzal hasonlítod össze fájl dátum lekérés után.
-
krokk
senior tag
válasz
Speeedfire
#5209
üzenetére
hol az if ág?
mert így jelen pillanatban csak if-nek kéne lennie else nélkül.
ha előtte van az if akkor viszont kimaradt az if zárójele "}" -
PazsitZ
addikt
válasz
Speeedfire
#5209
üzenetére
Mert az if és elseif között nem lehet semmilyen művelet
az értékadást
$megszamol = count(explode(' ', $_POST['szoveg']));
rakd ki az if elé. -
x123456
aktív tag
válasz
Speeedfire
#5204
üzenetére
3x???

Az hogy lehet? Egy cookie tudtommal csak egy példányban létezhet adott oldalon...
Rosszul tudok valamit? -
L3zl13
nagyúr
válasz
Speeedfire
#5202
üzenetére
Böngészőben megvan a cookie? Bezárás/újra megnyitás után is ott van?
-
L3zl13
nagyúr
válasz
Speeedfire
#5146
üzenetére
Amint AE írta, ne futtasd kétszer fölöslegesen a lekérdezést.
+ Ellenőrizd, hogy volt-e eredménye a select-nek. Ha nem, akkor ne insertálj.Ehelyett:
if (!mysql_query($tabla,$con)) {
die('Hiba: ' . mysql_error());
}
$row2 = mysql_fetch_assoc(mysql_query($tabla));
$fid = $row2['id'];
$katid = $row2['sorszam'];Vmi ilyesmit:
if (!($result=mysql_query($tabla,$con))) {
die('Hiba: ' . mysql_error());
}
if(!(mysql_num_rows($result)>0)) {
die('A megadott nick és kategória nincs benne az adatbázisban.');
}
$row2 = mysql_fetch_assoc($result);
$fid = $row2['id'];
$katid = $row2['sorszam']; -
ArchElf
addikt
válasz
Speeedfire
#5144
üzenetére
Mi az adatbázis hiba, mit jelent az, hogy "rossz adatokat eredményez"?
Ráadásul kétszer futtatod le a query-t, miért jó az?
Add át az első query értékét egy változónak és dolgozz azzal utána.Ez meg igazi SQL Injection forrás:
WHERE ((linkek_users.nick = '".$_SESSION['nick']."') and (linkek_kategoria.kat = '".$_POST['kategoria']."'))";AE
-
Tele von Zsinór
őstag
válasz
Speeedfire
#5141
üzenetére
Ha adminfelületen csinálod a backupot, az el lesz felejtve. Legyen automatizálva crontabbal, töltse fel valahová, vagy küldje el mailban. Én az utóbbi megoldást használom.
-
DeltaPower
addikt
válasz
Speeedfire
#5139
üzenetére
mysqldump, vagy phpmyadminnal lemented. phpben megírni elég jó meló, bár meg lehet csinálni azt is, hogy simán csv-be lemented
-
j0k3r!
őstag
válasz
Speeedfire
#5133
üzenetére
lehet, hogy en nem vettem eszre valamit, de nem talaltam meg a linkben a megoldast, de:
print_r($_POST);
hatasara
ff, chrome, safari alatt:
Array ( [season_x] => 52 [season_y] => 13 [season] => s01 )
ie, opera alatt:
Array ( [season_x] => 71 [season_y] => 26 )szoval mostmar egyertelmu, hogy a $_POST["season"] ures :/
-
Frigo
őstag
válasz
Speeedfire
#5111
üzenetére
Általános OOP könyvet nem nagyon fogsz találni .Egy jó Java könyv viszont remek kiindulási alap azért is mert a PHP alkotói erősen merítettek a Java-ból az OOP implementálásakor.Én személy szerint ezt a könyvet ajánlom : [link]
Ha ragaszkodsz a PHP-hez akkor ezeket az angol nyelvű könyveket érdemes megnézni:
[link]
[link]Illetve a weblaboron találsz kismillió leírást ,tutorialt .

-
x123456
aktív tag
válasz
Speeedfire
#5111
üzenetére
Mondjuk elméleti téren én is eléggé tudatlannak érzem magam, de úgy tudom, a C-beli struct az szimpla rekordszerkezetek leírására való eszköz az "ős" C-ben. Annak meg vajmi kevés köze van az OOP-hoz.
PHP részéhez egyáltalán nem tudok hozzászólni, azt csak hagyományos nyelvként használgattam, az OO része kimaradt, de java kapcsán nem igazán értem, mi bajod van a ponttal...
OOP egyébként (bocs, kissé szaxerűtlenül fogalmazok) inkább elméleti dolog. Ahány nyelv, annyiféle megvalósítása van - mondom ezt olyan alapon, hogy először a Turbo Pascal 5.5-ben találkoztam valami OO kezdeménnyel, rögtön utána tettem egy kis Java-s kitérőt, majd a minimális Java ismereteim birtokában "bepróbálkoztam" az objektumorientált perl-nél is, amit kb. úgy adtam fel, ahogy most te a javaról írtál.

-
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. -
Ő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
-
Ő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. -
Ő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?

-
zka67
őstag
válasz
Speeedfire
#5076
üzenetére
Napi 1-et tudsz regisztrálni

-
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...
-
egyjotakaro2
tag
válasz
Speeedfire
#5072
üzenetére
persze, egy komplett oldal volt/van fent rajta.FTP-re fel tudok menni, minden meg van.

-
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

-
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. -
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. -
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.
-
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;
} -
Tele von Zsinór
őstag
válasz
Speeedfire
#5023
üzenetére
<ol start="42">
-
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
-
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
-
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.
-
Tele von Zsinór
őstag
válasz
Speeedfire
#5012
üzenetére
.=, nem pedig . =, és az else ágadat gondold át megint.
-
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);
} -
Tele von Zsinór
őstag
válasz
Speeedfire
#5006
üzenetére
Filenév generálásakor str_pad.
-
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. -
zka67
őstag
válasz
Speeedfire
#4975
üzenetére
Már párszor említettem a print_r használatát. Ez többek közt arra jó, hogy kiírasd vele egy tömb elemeit. Olyanokét is, aminek esetleg nem ismered a felépítését.
A kódod pedig így módosul:
$i = 0;
while (isset($_FILES['media']['name'][$i])) {
if ($_FILES['media']['error'][$i] == 0){
$fn = './media/'.$id.'-'.$i.'.'.end(explode('.', $_FILES['media']['name'][$i]));
move_uploaded_file($_FILES['media']['tmp_name'][$i],$fn);
}
++$i;
} -
zka67
őstag
válasz
Speeedfire
#4973
üzenetére
Egy kis segítség

for ($i=1;$i<=4;$i++) {
$n = 'media'.$i;
if ((isset($_FILES[$n])) && ($_FILES[$n]['error'] == 0)) {
$fn = './media/'.$id.'-'.$i.'.'.end(explode('.', $_FILES[$n]['name']));
move_uploaded_file($_FILES[$n]['tmp_name'],$fn);
// ide jöhet az adatbázisba írás
}
}A form-ban media1 .. media4 legyen a fájl boxoknak a neve.
$n-be kerül a box neve
aztán ellenőrzés, hogy sikeresen feltöltődött-e
$fn-be kerül a fájl neve a szerveren
végül elmenti a fájlt
ezután jöhet az adatbázisba írásMi meg azért vagyunk itthon, mert tegnap leugrottunk agárdra, de dög meleg volt a víz. Aszongyák hogy a balcsi is dög meleg. Pedig nekünk se lenne messze...
-
zka67
őstag
válasz
Speeedfire
#4971
üzenetére
Mért nem vagy strandon?

Ezt a kódot gondold át mégegyszerfuss neki mégegyszer, másképp, ennek így semmi értelme. -
Sk8erPeter
nagyúr
válasz
Speeedfire
#4962
üzenetére
"Azért van ott az ob_start() mert már megszoktam a használatát, akár milyen kicsi is a program használom."
Csak akkor használd, ha nagyon muszáj, mert egyébként nagyon rossz programozási gyakorlathoz vezethet, és más számára is kevésbé áttekinthető a program.
Ezenkívül tök felesleges ott alkalmazni, ahol egyáltalán nincs rá szükség (pl. nem akarsz az output után még átirányítani header()-rel), na meg ellenkezik az MVC-szemlélettel.
(Egy szóval: gányolás!
)"Miért baj echo-zni a statikus dolgokat?"
Felesleges lassítani a megjelenítést, ha gyorsabb is lehet. És megint csak az átláthatóság..."így olvastam a leírásokat a neten"
A net tele van szeméttel...
--
Geshi-vel kapcsolatban: már eleve az example.php sem megy? Nem néztem bele a kódjába, de elvileg nem kéne, hogy baja legyen magasabb számú PHP-verziókkal, de esetleg adhatnál neki egy próbát, hogy kipróbáld korábbival, mint az 5.3.0. Bár szerintem valahol máshol lesz a hiba.
A MySQL-rész NÉLKÜL is kipróbáltad már a kódodat? Ha anélkül sem megy, akkor nem az adatbázissal hozható kapcsolatba, legalább akkor ezt ki lehet zárni.Szerk.: ja, amúgy a kódodban az hibás, hogy a megjelenítés során is escape-elve jelennek meg az idézőjelek, aposztrófok és egyéb speciális karakterek (pl. echo \"valami\"
. Ettől függetlenül működik, csak rosszul jelenik meg a kód. -
Tele von Zsinór
őstag
válasz
Speeedfire
#4964
üzenetére
Hibaüzenetek a fejlesztői gépen ugye be vannak kapcsolva? A php.ini display_errors beállítására gondolok. Dev gépen legyen be, prod gépen pedig kikapcsolva.
-
Tele von Zsinór
őstag
válasz
Speeedfire
#4962
üzenetére
Azonnal ISE500, vagy pár másodperc várakozás után? Utóbbi esetben kifogysz a futási időből, a hibaüzenetet meg elrejti a php (display_errors = off). Pechedre az ezt megnövelő függvény a legtöbb ingyenes tárhelyen tiltva van, de azért egy próbát megér: set_time_limit().
-
Sk8erPeter
nagyúr
válasz
Speeedfire
#4960
üzenetére
nálam most localhoston:
PHP 5.2.6
Apache 2.2.8Kipróbáltam a Te kódodat is (kiszedve az adatbázis-műveleteket), az is jól működik nálam.
Konkrétan nálad mi a hibajelenség?Szerk.: amúgy a kódodban tök feleslegesen használod az ob_start(); függvényt, nyugodtan pakolhatnád még az output elé az átirányítást, megfelelően átírva a kódot.
Amúgy is értelmetlen az egész HTML-részt echo-val kiíratni, mivel annak többsége mindig statikus. Válaszd szét jobban a kódodat (pl. a MySQL-csatlakozást is tedd még az output elé), mert így nehezen átlátható, ráadásul nem túl elegáns. -
Sk8erPeter
nagyúr
válasz
Speeedfire
#4958
üzenetére
Kipróbáltam, tökéletesen működik localhoston.
Egy 1300 soros kóddal próbáltam ki...
Szerk.: a contrib/example.php segítségével próbáltam ki.
-
Orb1337
tag
válasz
Speeedfire
#4955
üzenetére
Nem ismerem a Geshit, lehet hülyeséget mondok, de:
<textarea name="szoveg" cols="50" rows="10"></textarea>ebben a beviteli mezőben tárolod a programkódot?
Arra gondolok, hogy nem fér bele a 10sorba az a kódmennyiség amit szeretnél tárolni, vagy túl hosszú a sor. -
Tele von Zsinór
őstag
válasz
Speeedfire
#4941
üzenetére
localhost alatt nem jelzi az escapelést, míg szerveren rendesen látszódik.
Úgy hangzik, mintha a magic_quotes_gpc beállításod nem ugyanaz lenne a két gépen.
-
PazsitZ
addikt
válasz
Speeedfire
#4938
üzenetére
A highlight_file nem elég?

lásd pl itt: [link]mod: látom te sokféle fájl akarsz kiemelni, akkor tényleg nem elég.

-
Tele von Zsinór
őstag
válasz
Speeedfire
#4938
üzenetére
Hogy tisztázzuk: hol a gond, megjelenítésnél vagy tárolásnál?
Optimalizálási tipp: tároláskor küldd rá a geshit, ne megjelenítéskor. -
PazsitZ
addikt
válasz
Speeedfire
#4929
üzenetére
A megfelelő resouce-hoz a megfelelő eredményt kapod, igen.

-
PazsitZ
addikt
válasz
Speeedfire
#4927
üzenetére
-
pirk.lajos
csendes tag
válasz
Speeedfire
#4925
üzenetére
Weblaboron találhatsz.
-
Tele von Zsinór
őstag
válasz
Speeedfire
#4922
üzenetére
Mi az, hogy nem tudja értelmezni?

Nézd meg az egyik, az aláírásomban szereplő oldalt: tibia.hu. Itt is vannak aldomainek (az oldal nyelvének meghatározására), és /-el kezdődően vannak behúzva a css-ek és a képek. Remekül működik. -
Tele von Zsinór
őstag
válasz
Speeedfire
#4918
üzenetére
És ha /-el kezdődő url-eket használsz a script meg link tagokban? Így a hosttól kezdi nézni a böngésző.
-
Tele von Zsinór
őstag
válasz
Speeedfire
#4914
üzenetére
Amire te gondolsz amiatt van, mert a böngészők mappá(k)nak nézik a te keresőbarát url-ed. Megoldás lehet a statikus dolgoknál az abszolút url, a /-el kezdődő url, vagy a <base> tag.
-
PazsitZ
addikt
válasz
Speeedfire
#4911
üzenetére
Reguláris kifejezésekkel lehet ilyesmi összehasonlításokat végezni a megfelelő függvényegkkel.
pl. preg_match(#4908) fordfairlane Valóban rosszul fogalmaztam, hogy nem kiszűrni, hanem escapelni kell őket, mert speciális jelentésű karakterek. Igen, egyértelműen nem kell hozzá támadási szándék, hiszen már egy angol szövegben is előfordulhat többek között aposztróf '.
-
Sk8erPeter
nagyúr
válasz
Speeedfire
#4911
üzenetére
Bár nem igazán értem az értelmét a kódodnak, reguláris kifejezéssel ilyen lenne:
elseif ( isset($_GET['sorszam']) and (!preg_match('[\/admin\/.*]', $oldal) ) ){
...
}Remélem stimmel, nem teszteltem túl hosszan, de 3 dologra jól működött.
-
Tele von Zsinór
őstag
válasz
Speeedfire
#4909
üzenetére
Mire kell?
-
PazsitZ
addikt
válasz
Speeedfire
#4905
üzenetére
Rosszul fogalmaztam, speciális esetet leszámítva nem kell kiszűrni csak a támadási lehetőséget kivédve megfelelően lekezelni: escapelni.
-
PazsitZ
addikt
válasz
Speeedfire
#4903
üzenetére
(mysql_num_rows(mysql_query("SELECT url FROM linkek_tartalom WHERE (url LIKE '%(".$_POST['url'].")%') ")) > 0)
A mysql_real_escape_string nem ellenőrzésre van, hanem arra szolgál, hogy az sql speciális karaktereit kiszűrje. Ezen karakterek validak, csak az sqlben kapnak speciális jelentést, így ilyen köürnyezetben escapelni kell őket.
-
zka67
őstag
válasz
Speeedfire
#4900
üzenetére
Persze, hogy megoldható. Méghozzá nagyon egyszerűen:
for ($page... {
$current_li = ($page == $currentpage) ? ' id="current" : '';
echo '<li'.$current_li.'>'.$menu[$page].'</li>';
}Ahol $page az oldalak száma, $currentpage az aktuális oldal, a $menu tömbben pedig a menüsorok vannak.
Új hozzászólás Aktív témák
- Garancia kérdés, fogyasztóvédelem
- Büszke apukák és anyukák topikja
- Bemutatkozott a Poco X7 és X7 Pro
- Fortnite - Battle Royale & Save the World (PC, XO, PS4, Switch, Mobil)
- Gyúrósok ide!
- Samsung Galaxy A52s 5G - jó S-tehetség
- Kerékpárosok, bringások ide!
- Eleinte nem kíméli majd a pénztárcákat a Panther Lake
- Okos Otthon / Smart Home
- OLED monitor topic
- További aktív témák...
- iKing - Samsung Galaxy A56 5G 5G sebesség, nagy kijelző, stabil üzemidő 8/256 GB
- Asus TUF A15 FA507NUR 15.6" FHD IPS Ryzen 7 7435HS RTX 4050 16GB 512GB NVMe magyar vbill gar
- iKing - Xiaomi 14T Pro Titan Gray Vékony, prémium kivitel, nagy kijelző 12/512
- Samsung NX300 MILC + 18-50mm + 50-200mm
- Apple Macbook Air 13,6 M4 10C CPU/16GB/256GB - Égkék - HUN - 55 Ciklus - 100% akku , 2,5 év gari
- DELL Thunderbolt TB16 Dock (ELKELT)
- Új Razer 16 QHD+ OLED 240Hz i9-14900HX 24mag 32GB 2TB SSD Nvidia RTX 4090 16GB 175W Win11 Garancia
- Apple iPhone 12 Mini 128 GB Fekete 1 év Garancia Beszámítás Házhozszállítás
- RÉSZLETRE . OPCIONÁLIS. HP EliteBook 840 G11 üzleti prémium laptop számlával és garanciával
- ÁRCSÖKKENTÉS ASUS HD6870 videókártya
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő







ezeket pótolni fogom a többi oldalon is
lemaradt az árfolyamnéző modul, nézd meg te is a linket
köszi szépen!

. Ettől függetlenül működik, csak rosszul jelenik meg a kód.


