- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Steam Deck
- Házimozi haladó szinten
- HiFi műszaki szemmel - sztereó hangrendszerek
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- OLED monitor topik
- Sugárhajtómű ihlette a Zalman CPU-hűtőjét, de nem az üzemzaj tekintetében
- Milyen videókártyát?
- Vélemény: nem úgy tűnik, de Lip-Bu Tan most menti meg az Intelt
- Fejhallgató erősítő és DAC topik
Új hozzászólás Aktív témák
-
DeltaPower
addikt
válasz
Sk8erPeter #10764 üzenetére
Itt egy elegánsabb megoldás, mert már nekem is szúrta a szememet az előző tákolmányom
while ($sor = mysql_fetch_array($mysql)){
...
echo "<a class='reszletek' href='termek_reszletes.php?termekid=$id&termeknev=$nev&ar=$ar&kep=$kep&hosszu_leiras=$hosszu_leiras&rovid_leiras=$rovid_leiras'><b>tovább!</b></a>";
...
}
echo"
<script>
$(function(){
$(a.reszletek).click(function(e){
$.ajax({
url: $(this).attr('href'),
success: function(html){
$('#ajax').html(html)
}
});
e.preventDefault();
})
}
</script>
";Azt viszont nem értem, hogy a termek_reszletes.php-nek minek átadni ennyi paramétert. Egy termék id szerintem bőven elég lenne, a többit lekéred adatbázisból id alapján.
-
DeltaPower
addikt
válasz
trisztan94 #10760 üzenetére
Mert nem jó a jquery selectorod.
Így próbáld:
while ($sor = mysql_fetch_array($mysql)){
...
echo "<a class='reszletek' id='reszletek-".$id."' href='#'><b>tovább!</b></a>";
...
echo"
<script>
$(function(){
$('#reszletek-".$id."').click(function(){...})
}
</script>
";
}Tele von Zsinór megoldása szebb, de több átalakítást igényel a kódodban.
-
DeltaPower
addikt
válasz
Sk8erPeter #10756 üzenetére
Én viszont továbbra sem értem, hogy a Hirdetés_id mit keres a hirdető táblában.
Bár lehet azóta már módosult a szerkezet a másik topicban.
Btw rettentő jó hogy van php, sql, valamint php+mysql topic is, és akik nem tudnak dönteni, azok akár több helyre is beírják ugyanazt.
-
DeltaPower
addikt
válasz
trisztan94 #10644 üzenetére
ha /phpMyAdmin/index.php-ra se ad be semmit, akkor nincs directoryindexben a php
-
DeltaPower
addikt
válasz
Sk8erPeter #10562 üzenetére
Az ini_set is gyanús, sok ingyenes tárhelyen tiltják.
-
DeltaPower
addikt
válasz
Sk8erPeter #10533 üzenetére
Ja bocs, ezred
-
DeltaPower
addikt
-
DeltaPower
addikt
Alapbeállításban egy fájlos, kivéve ha a konfigban az innodb_files_per_table hozzá lett adva telepítés után.
Az előző kérdésem az összes adatbázisra együtt vonatkozott, ami a helyi mysql-ben van. Nálam összesen több mint 5 giga adatbázis van, és még ha nem is valamelyik nagyot, hanem egy pár táblás, majdnem üres kisebb adatbázist használok, az is eléggé lassú tud lenni. Persze ebben benne van a lassú és töredezett vinyó is.
Az egy fájlos tárolás azért lényeges, mert ilyenkor az összes innodb adatbázis egyetlen fájlban tárolódik, ami szerintem teljesítmény szempontjából nem a legjobb megoldás egy bizonyos méret felett. (sajna egy fájlosról több fájlosra áttérni elég nehézkes egy létező adatbázis esetén).Csináltam most egy gyors tesztet, teljesen egyszerű php file, csak simán felkapcsolódok egy tök üres adatbázisra. A szerveren most 21 adatbázis van, össz tárhelyfoglalás 5,98 GB.
A mysql 250-es satás, 7200-as WD vinyón, 220 gigás partíció, 500 mega szabad hely. Az InnoDB ibdata1 fájlja 220(!) fragmentben. (8G ram, x2 250, a rendszer ssd-n van, nem ezen)Ezek az idők jöttek ki:
0.0013120174407959s // saját DB layer include
0.99860501289368s // kapcsolódás saját DB layeren keresztül
0.00019001960754395s // kapcsolat lezárás DB layeren keresztül
1.0029170513153s // kapcsolódás mysql_connect()-el
7.9870223999023E-5s // kapcsolat lezárás1 másodperc körüli idő egy sima kapcsolódásra, üres adatbázishoz.
-
DeltaPower
addikt
Ha jól értem ezt, az IF első része arra vonatkozik, ha egy adott feladótól érkező üzeneteket akarsz listázni, a második része pedig a feladók listája.
Három foreach tényleg fölösleges, még ha max 2 fut is le, főleg hogy minddel végigmész az összes üzeneten.
Én ilyesmi megoldást ajánlok:
function list_messages()
{
if( $_GET['i'])
{
$messages = self::find_messages_by_sender_id($_GET['i']);
}
else
{
$messages = self::find_messages_by_users_id($_SESSION['user_id']);
$sender_list=getSenderListWithCount($_SESSION['user_id']);
}
foreach ($messages as $message) { ... }
}
function getSenderListWithCount($cimzett_id)
{
// SELECT COUNT(message_id), ... WHERE cimzett_id={$cimzett_id} GROUP BY sender_id
} -
DeltaPower
addikt
válasz
trisztan94 #10425 üzenetére
Nem kell két külön tábla.
Az első beillesztés után lekérdezed a rekord id-jét (pl mysql_insert_id()-vel) és a személyes adatok megadása után updateled ezt a rekordot. -
DeltaPower
addikt
válasz
Peter Kiss #9899 üzenetére
Jó ez a tömör forma miatt, csak vigyázni kell a zárójelezésével ha többet ágyazunk egymásba, mert más az asszociativitása mint ahogy logikus lenne.
-
DeltaPower
addikt
válasz
Speeedfire #9771 üzenetére
Ez a linkelt oldal is php-val dolgozik, mindössze megspórol annyi overheadet, hogy nem php-n belül vizsgálja, hogy létezik-e a vízjelezett változat a képből, hanem htaccess-ben. Ha viszont nincs vízjeles változat mentve, akkor ugyanúgy php-vel dolgozza fel.
A vízjel nélküli változat szintén egyszerűen megoldható, kell egy plusz rewriterule az eredeti képek könyvtárába, ami egy php-ra irányít, amiben le tudod csekkolni, hogy be van-e lépve az admin. Ha igen, akkor megy outputra a kép, ha nem akkor 403.
modal szerintem arra gondol, hogy feltöltésnél egy nem publikus könyvtárba rakja a képeket, onnan feldolgozza (átméretezés stb.) és a vízjelezett képeket teszi be a publikus könyvtárba, így megmaradnak az eredetik is.
-
DeltaPower
addikt
válasz
Sk8erPeter #9760 üzenetére
Szoktak a képeket tartalmazó könyvtárba tenni egy htaccess-t, ami beérkező kérésnél átirányít egy php-ra, ami ráteszi a vízjelet a képre és kidobja outputra, vagy ha volt belőle vízjeles változat mentve, akkor azt küldi vissza. Szerintem elegánsabb, mint kép src-nek egy "img.php?id=asdfghjkl12345"-jellegűt megadni.
-
DeltaPower
addikt
válasz
Retekegér #8053 üzenetére
http://hu.php.net/manual/en/function.mysql-connect.php
http://hu.php.net/manual/en/mysqli.construct.phpmysql_connect()-nek más a paraméterlistája, mint a mysqli_connect()-nek
így próbáld:
$dbc = mysql_connect('sql4.ultraweb.hu', 'felhasználó', 'jelszó');
mysql_select_db('adatbázis', $dbc);szerk: mysql_query()-nek és mysqli_query()-nek is más a paraméterlistája, nem elég csak a függvényneveket kicserélni.
-
DeltaPower
addikt
Lényegében az történik, amit írtál, így működnek a "változó változók".
$valami='akarmi';
$elso='valami';
// ez a két sor ugyanazt jelenti
echo $valami; // 'valami' nevű változót írja ki
echo ${$elso}; // a $elso tartalmával megegyező nevű változót írja kiA { }-ek el is hagyhatók, csak abban az esetben szükséges, ha enélkül nem egyértelmű a megadás (pl. $$tomb[0] esetén, nem mindegy, hogy a $$tomb nevű tömb 0-ik eleme, vagy a $tomb[0] tartalmával egyező nevű változó)
Az általad hozott példa, a {${alma}} viszont nem biztos, hogy működik, mivel az 'alma' konstans tartalmának megfelelő nevű változót jelenti, konstans használata pedig nem tudom, hogy megengedett-e ilyen kifejezésben.
-
DeltaPower
addikt
válasz
Louloudaki #7961 üzenetére
Így elsőre nem látok benne hibát. Viszont ez tipikus egyszer hívandó függvény, nem lehet, hogy véletlen más (több) helyen is meghívod?
-
DeltaPower
addikt
Ezt az order-t én se értettem. Azt sem, hogy ha mindenképp year és month kell, akkor miért nem
select ..., year(1.date) as 1year ... order by 1year, ...
formában, szerintem gyorsabb mintha ordernél futtatná a dátumfüggvényeket.
Másik: SELECT *-ot csak az egyszerűség kedvéért van így, vagy tényleg minden mezőt lekérdez? -
DeltaPower
addikt
válasz
fordfairlane #7632 üzenetére
Gondolom a register_globals a session változóra mutató referenciaként hozza létre a globálisokat.
-
DeltaPower
addikt
válasz
Speeedfire #7612 üzenetére
...wrapper is disabled in server configuration by allow_url_fopen=0...
távoli fájlmegnyitás le van tiltva?
-
DeltaPower
addikt
Ha ugyanazon formban van, más "name" attribútumot kell neki adni, elküldés után elvileg csak az a POST mező kap értéket a kettő közül, amelyik gombra kattintasz.
"Auto commit" alatt autocomplete-et értesz, tehát a mezőkbe begépelt szöveg tárolását? Nem sok indokot ismerek, amiért érdemes lenne letiltani, ráadásul elég sok user használja.
-
DeltaPower
addikt
Sürgős segítség kellene...
Van egy tárhely, ahol a safe mode be van kapcsolva. Ha php-ból létrehozok egy könyvtárat, és ebbe próbálok írni, akkor eltérő owner id-k miatt (a script a tárhelyhez rendelt felhasználó jogaival fut, a könyvtár tulaja viszont a www-data lesz) safe mode hibát kapok. Mit lehet ezzel kezdeni?
Előre is kösz a segítséget.
-
DeltaPower
addikt
válasz
sellerbuyer #7285 üzenetére
2-est valahogy így próbáld:
RewriteRule ^stats/index([0-9]*).ht(m?ml?)$ stats/index.html [R,L]szerk: nem biztos hogy jó, emlékezetből írtam
-
DeltaPower
addikt
válasz
Brown ügynök #7165 üzenetére
a listázós scriptedre nem kapsz safe_mode vagy open_basedir warningot?
-
DeltaPower
addikt
válasz
Brown ügynök #7163 üzenetére
nem hiszem, hogy a hivatkozást rontod el. lehet, hogy a konfig alapból nem engedi ki a scripteket a public_html-ből
-
DeltaPower
addikt
válasz
Speeedfire #7106 üzenetére
igen, mivel az első változatban a 7. sorban még
$lekerdez = mysql_query($lekerdez);
szerepelt, ami resource és a 9. sorban induló while ciklus használta
while($row = mysql_fetch_assoc($lekerdez)) {
viszont a 61. sorban a cikluson belül(!) felüldefiniáltad, amit csak különleges esetekben szoktunk csinálni -
DeltaPower
addikt
válasz
Speeedfire #7097 üzenetére
61-es sorban felüldefiniálod a $lekerdez-t.
-
DeltaPower
addikt
válasz
Brown ügynök #6977 üzenetére
headerbe:
<base url="tedomained.com" />
elvileg megoldja -
DeltaPower
addikt
válasz
Brown ügynök #6975 üzenetére
rel="stylesheet" nem hiányzik véletlen?
-
DeltaPower
addikt
szerintem ennél jobb megoldás, ha erősen hashelt-sózott jelszót mentesz sessionba és minden lapkérésnél ellenőrzöd a jogosultságot.
adatbázishoz minden querynél új kapcsolatot nyitsz és a futása után lezárod? -
DeltaPower
addikt
ez így nem jó. capcha kódot szöveges formátumban nem küldjük ki, te viszont beteszed egy hidden inputba, ami string függvényekkel feldolgozható. capchának az lényege, hogy a kód csak kép formában megy ki a szerverről.
egy megfelelő módszer például az, hogy lemented sessionba a capcha kódot, és a form elküldése után onnan hasonlítod össze a formban kapott kóddal.Forza_JUVE: a securimage faq-jában (http://www.phpcaptcha.org/faq/) olvasd el a "The image appears but there is no text on the image." részt.
(bocs hogy nem tudtam linkelni de épp kinyírtam a js interpretert)
-
DeltaPower
addikt
válasz
Alukard #6879 üzenetére
ebben az esetben felesleges felbontani típus alapján 11 táblára.
általánosan elmondható, hogy minden olyan mezőt indexelni kell, ami joinban vagy feltételben szerepel. kihagyott indexelés miatt nagy (1000+ soros) táblák joinolásánál, keresésénél több nagyságrenddel emelkedhet egy query ideje -
DeltaPower
addikt
válasz
Speeedfire #6421 üzenetére
bocs, előbb rosszul értelmeztem a hibaüzenetet. nem kell bele az "abstract"
-
DeltaPower
addikt
válasz
Speeedfire #6419 üzenetére
ha jól értem, akkor kell a public/private/stb az interface-ben levő függvényeknek is
-
DeltaPower
addikt
válasz
Siriusb #6321 üzenetére
kb ez a különbség, amit írtál.
bind_result kódtömörítésre hasznos, pl egy objektum értékeinek feltöltésénél ehelyett$tomb=mysql_fetch_array($qry);
$this->valtozo1=$tomb[0];
$this->valtozo2=$tomb[1];
$this->valtozo3=$tomb[2];ennyit írsz:
mysqli_stmt_bind_result($qry, $this->valtozo1, $this->valtozo2, $this->valtozo3);
-
DeltaPower
addikt
válasz
TomyLeeBoy #6251 üzenetére
amit írtál, ez is egy használható szintaxis, viszont kódszerkesztőkben a szintaxis kiemelés nem ismeri fel az idézőjelen belül használt változókat
auto increment mezőnél fölösleges megadni az üres értéket
-
DeltaPower
addikt
válasz
Speeedfire #6053 üzenetére
egész jó, ezt még nem is ismertem, kösz
-
DeltaPower
addikt
válasz
Speeedfire #6051 üzenetére
js tömörítés nem mondható kódolásnak, egyszerűen egy erre kitalált progival a függvényneveket, változóneveket stb pár betűs rövidítésekre cserélik. ennek az eredménye egy szabályos, de olvashatatlan kód.
"deobfuscator" nevű programot/plugint keress, azok olvashatóbbá teszik. pl firefox addon -
DeltaPower
addikt
itt van egy csomó apache+php csomag: [link]
ez a xamp-al tipikus eset: ha nem tudod használni, tanuld meg. tökmindegy milyen szervercsomagot telepítesz, ha nem tudod beállítani.
ha "másnál megy nálam nem". akkor kérd el "mástól" azt a xamp telepítőt, amit ő használ.
-
DeltaPower
addikt
válasz
TomyLeeBoy #5638 üzenetére
ahogy Von Zsinór kolléga is mondta, megnyitod a bejelentkezést böngészőben, átmész forráskód nézetre, kimásolod a formot, beilleszted az új helyre, és a form action paraméterét be- vagy átírod, hogy a webmail indexre mutasson.
-
DeltaPower
addikt
válasz
TomyLeeBoy #5629 üzenetére
webmail belépési formját átmásolod a főoldalba és target-nek megadod a webmail indexet, vagy aminek a webmail belépés postol, persze elérési úttal együtt.
-
DeltaPower
addikt
válasz
spammer #5577 üzenetére
változót megfelelő szűrés nélkül fájlműveletre használni nagyon kockázatos.
a te példádban, megadom a mezőben hogy "../index.php" így szépen be fogja olvasni az index.php-dat.
az alkönyvtár és a txt kiterjesztés használata már egy fokkal jobb, de így is fontos lenne az említett fájlrendszer specifikus karaktereket kiszűrni a változóból. esetleg a lehetséges neveket letárolni egy külön txt-ben, és ha abban nem szerepel a név, akkor el se kezdeni a beolvasást. -
DeltaPower
addikt
ha jól emlékszem, FF 3.6.4-ben jött be a külön szálas flash player futtatás. egyből jött is vele a szopás, az egyik oldalunkban a flashvars/get paramétereket ugyanis random nem adta át a flash movie-nak (!!!). ha kikapcsoltam a külön szálon futtatást, akkor viszont jó volt. azóta nem próbáltam még, hogy javították-e.
-
DeltaPower
addikt
-
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
-
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.
-
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
-
DeltaPower
addikt
headeres hibák ellen, fájl legelejejére, a session_start() után tehetsz egy ob_start()-ot
-
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
-
DeltaPower
addikt
válasz
Speeedfire #5017 üzenetére
-
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. -
DeltaPower
addikt
válasz
Speeedfire #4894 üzenetére
unset($_POST['hibas_mezo_neve']);
-
DeltaPower
addikt
válasz
Speeedfire #4885 üzenetére
alapvetően meg kellene cserélned a form kiíratását és a küldött adatok ellenőrzését, az ellenőrzés legyen előbb. így ha hiba van, akkor a form elemeknél vissza tudod írni a value-be a küldött értékeket, ha pedig nincs, akkor ki se kell íratni a formot.
(szerk) így a hibákat is a form elé tudod íratni.(megjegyzés: capchába nem szoktuk visszaírni a hibás értéket.) -
DeltaPower
addikt
válasz
Speeedfire #4811 üzenetére
úgy az elegáns, ha mondjuk 60 karakter hosszú szöveget akarsz kiíratni, hogy megkeresed a 60-as limit előtti utolsó szóközt és ott vágod el. így nem lesznek fél szavak a végén.
-
DeltaPower
addikt
válasz
Speeedfire #4759 üzenetére
bekuld-kat.php
kezdolap.php
login.php
reg_check.php
register.php
tartalom.php
vedett.phpezek nem utf8 kódolásúak. attól hogy headerben kiküldöd az utf8-at, maga a fájl még iso(ansi) marad, iso karakterekkel.
-
DeltaPower
addikt
válasz
Speeedfire #4659 üzenetére
-
DeltaPower
addikt
ha határideje van az aukciónak, akkor érdemes időzített feldolgozást csinálni, és pl. lezárás után egyből mehetnek ki az értesítő mailek a nyerteseknek stb.
az adatbázis meg azért van, hogy 10-100ezer rekordot kezeljen. naponta 1x fut le úgyis. -
DeltaPower
addikt
válasz
Sk8erPeter #4524 üzenetére
a !isset-nél és üresnél is ugyanoda ment a forward, ezért dobtam ki az issetet, mivel a trim nem létező változónál szintén üres stringet ad vissza (max dob mellé egy noticet). így a feltétel végeredményben ugyanaz, viszont spóroltunk kb 50 byte kódot
-
DeltaPower
addikt
válasz
PowerBuldog #4522 üzenetére
ha nincs register_globals, akkor a $_POST['acc'] és a $acc nem ugyanaz, az előbbiben ott lesz az adat, de az utóbbiban nem.
továbbá az első feltétel fölöslegessé teszi a másodikat, amennyiben nem akarsz mezőfüggő hibaüzenetet kiíratni
<?phprequire_once("install.php");
if ( trim($_POST['acc']) == "" || trim($_POST['jelszo']) == "" ) {
header('Location: reglap.php');
}
elseif (isset($_POST['acc']) && isset($_POST['jelszo'])) {require_once("muveletek.php");
}
?>
Új hozzászólás Aktív témák
Hirdetés
- 3DKRAFT.HU - 3D NYOMTATÁS - AZONNALI ÁRAJÁNLAT - GYORS KIVITELEZÉS - 480+ POZITÍV ÉRTÉKELÉS
- BESZÁMÍTÁS! ASRock B250 i5 7400 16GB DDR4 512GB SSD GTX 1660 SUPER 6GB Rampage Everest 500W
- Telefon felvásárlás!! Apple Watch Series 6/Apple Watch Series 7/Apple Watch Series 8
- Csere-Beszámítás! Asus Számítógép PC Játékra! R5 1600X / GTX 1080 8GB / 32GB DDR4 / 256SSD + 2TB HDD
- Bomba ár! Fujitsu LifeBook U757 - i3-7GEN I 16GB I 256SSD I 15,6" FHD I HDMI I Cam I W11 I Garancia!
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest