Hirdetés
- Megbüntették, ezért feloszlatná az EU-t Elon Musk
- Ez lehet az Apple hajlítható telefonjának formája, mérete
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- Vivo X200 Pro - a kétszázát!
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Honor Magic7 Pro - kifinomult, költséges képalkotás
- Vivo X300 - kicsiben jobban megéri
- Apple Watch
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
Új hozzászólás Aktív témák
-
-
Speeedfire
félisten
válasz
pumatom
#5273
üzenetére
érdekes a linkelt oldal, ugyanis ha rámegyek a ./randomra akkor a címsorba írja ki a kép címét, ilyet eddig még nem is láttam
ahogy fentebb is írták, ha social share-t szeretnél akkor elég lekérni a fájl nevét és azt hozzáilleszteni a link végére
ez a címsoros megoldás teljesen felesleges -
L3zl13
nagyúr
válasz
pumatom
#5273
üzenetére
Szerintem ehhez url rewrite kell, azaz nem igazán PHP. Bővebben:[link]
De azt továbbra sem értem ettől miért lenne jobban linkelhető, mintha az lenne a címsorban, hogy http://weboldalneve.com/index.php?pic=sunshine.jpg vagy akár (adatbázissal kiegészítve) http://weboldalneve.com/index.php?picid=5324.
-
L3zl13
nagyúr
válasz
pumatom
#5200
üzenetére
Kifejtenéd pontosabban, hogy hogy gondolod ezt a címsoros dolgot, mert nekem nem tiszta.
A képfájlok listájának generálását viszont át kéne dolgoznod mert van vele pár probléma.
Minek rakod pl egy stringbe és aztán explode-olod szét?
Mi van, ha egy fájlnév space-t tartalmaz?
Miért eregit használsz a fájltipus ellenőrzésére? Teljesen fölösleges itt regexp. Vagy ha már regexp akkor egy jó patternnel megoldható lenne.
Mi van ha a fájlnév tartalmazza a jpg/gif/png karaktersorok valamelyikét, nem a kiterjesztés? (jpgviewer.exe pl) -
cucka
addikt
válasz
pumatom
#3534
üzenetére
Például lerakod a session-be azokat a képeket, amelyeket már megnézett a júzer.
A kódod utolsó négy sora így fog kinézni:
$imglist = explode(" ", $imglist);
if (isset($_SESSION['viewed_images']) && is_array($_SESSION['viewed_images']) && count($_SESSION['viewed_images'])<count($imglist)){
$imglist=array_diff($imglist, $_SESSION['viewed_images']);
}else {
$_SESSION['viewed_images']=array();
}
$random = array_rand($imglist, 1);
$image = $imglist[$random];
$_SESSION['viewed_images'][]=$image;A kód azt csinálja, hogy ha eddig kevesebb képet nézett meg a felhasználó, mint a képek száma, akkor a képek tömbjéből kivonja a már megnézett képek tömbjét, különben az eredeti képekből dolgozik. Ha a felhasználó már az összes képet látta, akkor a megtekintett képek tömbjét nullázni kell.
-
1ed
csendes tag
válasz
pumatom
#3534
üzenetére
Helló!
Egy ilyesmi működhet:
<?php
$imglist='';
$img_folder = "images/pic/";
$imgs = dir($img_folder);
while ($file = $imgs->read()) {
if (eregi("gif", $file) || eregi("jpg", $file) || eregi("png", $file))
$imglist .= "$file ";
} closedir($imgs->handle);
$imglist = explode(" ", $imglist);
if (!isset($_SESSION['imglist']) || !count($_SESSION['imglist']))
{
shuffle($imglist);
$_SESSION['imglist'] = $imglist;
}
$image = array_pop($_SESSION['imglist']);Hogy mennyire jó megoldás azt nem tudom.
-
tildy
nagyúr
válasz
pumatom
#3511
üzenetére
cssel:
<style type="text/css">
#outer {height: 400px; overflow: hidden; position: relative; width: 100%;}
#outer[id] {display: table; position: static;}
#middle {position: absolute; top: 50%; width: 100%; text-align: center;} /* for explorer only*/
#middle[id] {display: table-cell; vertical-align: middle; position: static;}
#inner {position: relative; top: -50%; text-align: left;} /* for explorer only */
#inner {width: 200px; margin-left: auto; margin-right: auto;} /* for all browsers*/
/* optional: #inner[id] {position: static;} */
/* just format */
div.greenBorder {border: 1px solid green; background-color: ivory;}
</style>
</head>
<body>
<h1>Vertical and horizontal centering in valid CSS - Example</h1>
<div id="outer" class="greenBorder">
<div id="middle">
<div id="inner" class="greenBorder">
any text<br>
<b>any height, set width,</b><br>
any content, for example generated from DB<br>
everything is both vertically and horizontally centered<br>
</div>
</div>
</div> -
válasz
pumatom
#3322
üzenetére
Közbe rájöttem, hogy lehet szürke mezei HTML-lel is csinálni Javascript helyett, szóval írd így a végét:
echo '<a href="' . $_SERVER['PHP_SELF'] . '"><img src="' . $img_folder . $image . '" border=0></a>';
Tehát ez linkesíti a képet, így ha rákattintasz, elvileg ugyanaz az oldal jön be a PHP_SELF cuccos miatt.
-
válasz
pumatom
#3310
üzenetére
Képre való kattintáshoz nem PHP, hanem inkább Javascript kell, mert a kattintás a kliens oldalon történik a server (PHP) mit sem tud róla.
Már nem azért, de a kódot amúgy honnan kukáztad össze?

Kicsit kitakarítottam:<?php
$imglist = array();
$img_folder = 'images/pic/';
$imgs = dir($img_folder);
while ($file = $imgs->read()) {
if (preg_match("/\.gif$/i", $file) || preg_match("/\.jpg$/i", $file) || preg_match("/\.png$/i", $file))
$imglist[] = $file;
}
closedir($imgs->handle);
mt_srand();
$image = $imglist[mt_rand(0, sizeof($imglist)-2)];
echo '<img src="' . $img_folder . $image . '" border=0>'; -
Tele von Zsinór
őstag
válasz
pumatom
#3241
üzenetére
$dir_objektum = dir("pics/");
$tomb = array();
while (false !== ($bejegyzes = $dir_objektum->read())) {
if (!is_dir($bejegyzes)) $tomb[] = $bejegyzes;
}
$dir_objektum->close();ez egy tömbbe pakolja a mappában levő fileokat, ebből kell neked egy random elemet kiválasztani.
jobb megoldás, ha adatbázisban tárolod, milyen filejaid vannak, és onnan választasz ki egy elemet, mysql esetén ez például
order by rand() limit 1
-
válasz
pumatom
#2884
üzenetére
A dreamweaver jó php-re is, de csak nagyon minimálisan támogatja. Ha jó autokieges szerkesztőt akarsz, akkor az (eclipse alapú) Aptana Studio jó választás lehet. Nem találtam még jobbat nála. Bár ezt majd inkább akkor ajánlanám, ha pl már eljutottál az OOP-ig, mert azelőtt szvsz még csak zavarna a sok feature.
Új hozzászólás Aktív témák
- Mit tud egy nagy név? Teszten az Acer Predator Orion 5000 PC
- Kormányok / autós szimulátorok topikja
- Asztalos klub
- Megbüntették, ezért feloszlatná az EU-t Elon Musk
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Kés topik
- Call of Duty: Black Ops 7
- Automata kávégépek
- World of Warships
- Samsung kuponkunyeráló
- További aktív témák...
- NVIDIA RTX 3080 Ti 12GB GDDR6X Founders Edition Eladó!
- Újszerű Samsung IPS monitor, Emelhető-Forgatható, 2xHDMI, DP, Joystick
- DJI SPARK SUNRISE YELLOW DRONE SOK KIEGÉSZÍTŐVEL ELADÓ
- WD Blacck SN8100 4 TB M.2 NVME PCI-E 5.0 x4 - Új - 14.900-14.000 MBs - Eladó!
- WD Black SN850X 4TB M.2 NVME PCI-E 4.0 x4 - Új - 7300-6600 MBs - Eladó!
- Telefon felvásárlás!! Samsung Galaxy A16, Samsung Galaxy A26, Samsung Galaxy A36, Samsung Galaxy A56
- Referencia Weboldallal Világítós bill+laptop bill magyarítás. Rania 3M -is! Touchpadok is.Posta ok
- iPhone 12 64GB 95% (3 hónap Garancia)
- Beszámítás! LG 32GQ850-B 32 240Hz IPS QHD 1ms monitor garanciával hibátlan működéssel
- BESZÁMÍTÁS! ASRock B450 R5 5600X 16GB DDR4 512GB SSD RTX 3060 12GB Zalman Z1 Plus Cooler Master 750W
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


máshoz nem tudom elképzelni.






