- eBay-es kütyük kis pénzért
- bitpork: Phautós tali a Balcsinál 2025 Augusztus 2 napján (szombat)
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- Magga: PLEX: multimédia az egész lakásban
- gban: Ingyen kellene, de tegnapra
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Brogyi: CTEK akkumulátor töltő és másolatai
- Mr Dini: Mindent a StreamSharkról!
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
Ú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
- HP EliteBook 850 G8 Fémházas Multimédiás Laptop 15,6" -65% i7-1165G7 16/512 Iris Xe FHD
- Szép! HP EliteBook 850 G8 Fémházas Multimédiás Laptop 15,6" -65% i7-1185G7 16/512 Iris Xe FHD
- GeForce RTX 3060 Ti Gaming OC 8GB
- Gigabyte 15 G5 Gamer FHD IPS 144Hz i5-12500H 12mag 4.5Ghz 16GB 512GB Nvidia RTX 3050 Win11 Garancia
- Layer 2 Plus (Layer 3 Lite) Passzív rack switch, 24x1G + 4x10G SFP+ , SFP-kkel FS S3900-24T4S-R
- BESZÁMÍTÁS! ASRock B450M R5 2600X 16GB DDR4 500GB SSD 1TB HDD GTX 1650 4GB Zalman N5 CM 450W
- Apple iPhone 14 Pro / Gyárifüggetlen / 128GB / 12Hó Garancia / 88% akku
- LG 38WN95C - 38" Ívelt NANO IPS - 3840x1600 - 144hz 1ms - Nvidia G-Sync - AMD FreeSync - ThunderBolt
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- 16 GB RTX 4080 HP OMEN - garanciával
Állásajánlatok
Cég: FOTC
Város: Budapest