- Honor Magic6 Pro - kör közepén számok
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- Samsung Galaxy A54 - türelemjáték
- Samsung Galaxy S24 - nos, Exynos
- Mindent megtudtunk az új Nokia 3210-ről
- Motorola Edge 40 - jó bőr
- Apple iPhone 15 Pro Max - Attack on Titan
- Telekom mobilszolgáltatások
- Netfone
- Redmi Watch 4 - olcsó hús, sűrű a leve
Hirdetés
-
Képeken az egyik kameráját elvesztő Sony Xperia 10 VI
ma Részletes anyag került fel az internetre a Sony idei középkategóriás telefonjáról, három helyett két hátlapi kamera várható.
-
Spyra: akkus, nagynyomású, automata vízipuska
lo Type-C port, egy töltéssel 2200 lövés, több, mint 2 kg-os súly, automata víz felszívás... Start the epic! :)
-
Mozgásban az F1 24
gp A Forma 1 versenyek rajongói hamarosan végre belevethetik magukat az idei epizódba.
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
AjaXplorerrel, pontosabban új nevén Pydio-val tudnád távolról is nézni a megosztott tartalmakat bejelentkezést követően, amennyiben webszerver is van a gépeden, és azt működésre bírod, hogy távolról meg tudj tekinteni rajta egy weblapot:
http://pyd.ioMár ha ez megfelelő.
Ez alapvetően egy nagyon ügyes kis fájlmegosztó, amibe rengeteg plugin van építve, akár dokumentumok szerkesztésére, videók/képek megtekintésére, akár tömörített állományok tartalmának megnézésére, meg egyebekre. Biztosít többfelhasználós működést, egymással megosztogatást is, a regisztráció/bejelentkezés pedig eleve adott.Az még nekem nem teljesen tiszta, hogy amennyiben igazából a videó-megtekintések idejére pont, hogy leállítani szeretnéd az utorrent.exe-t, akkor miért az volt az eredeti cél, hogy elindítsd. Az exec()-hez és hasonlókhoz pedig jogosultságokat kell biztosítani (ami erősen megfontolandó!). Az ütemezett feladatos megoldást hogy érted? Kicsit most számomra keverednek az eddigi ötletek a végcéllal, picit ellentmondónak tűnnek a szempontok.
[ Szerkesztve ]
Sk8erPeter
-
#68216320
törölt tag
Köszönöm a megoldásokat.
Egy észrevétel: milyen már, hogy a gugli a php.net-es találatokat nem hozza be, mert kártékony oldalnak jelöli? Félnek a feltörekvő konkurenciától?
-
Kurik
tag
válasz Sk8erPeter #14501 üzenetére
Igen, már ajánlottad az ajaxplorer-t másik bejegyzésemre is. Ki is próbáltam, de feleslegesnek éreztem.
A video megtekintéssel semmi gondom, megoldottam magamtól.A célom: Elindítom a kiválasztott video-t automatikusan leállítja az uTorrentet, majd megtekintem a video-t majd azt szeretném, hogy ha végzett a video induljon el vissza az uTorrent.
A pillanatnyi kódom működik is le is állítja meg is nézem a video-t, de nem indul el vissza az uTorrent, vagy is elindul de az első hsz-ben leírtak szerint beteszi a feladatkezelőbe és pont a vége.Bármelyik programra kicserélem jól működik, csak az uTorrentet nem indítja.
Az ütemezett feladat: Olyat olvastam, hogy tegyem ütemezett feladatba az "elindítást" mondjuk percenként, ami áll egy ellenőrző batch-ből, és ha megtalálja az indít.txt akkor lefuttatja az uTorrentet, majd törli az indít.txt. A php-vel meg hozzam létre az indít.txt amikor szeretném futtatni. De nem hiszem, hogy ez lenne a legegyszerűbb megoldás...
A webhozzáférés jelszóval el van látva emiatt nem aggódok.
Tudom mit szeretnék, maximum nem tudom kifejezni magamat.A jogosultságokról tudnál írni? Vagy az nem lehet probléma?
Köszönöm a hozzászólásodat!Ha tévedek, ki lehet javítani :)
-
Kurik
tag
Tudom így indít, de ha ugyanezt beütöm vagy belehelyezem egy bat-ba és kézzel elindítom akkor már jó. Viszont ha ráhivatkozok exec()-vel a bat-ra már ugyanazt csinálja mintha simán exec('uTorrent.exe') lenne.
Ezt a részét nem értemKöszönöm Neked is!
[ Szerkesztve ]
Ha tévedek, ki lehet javítani :)
-
SirRasor
őstag
Hoi! Csak egy gyors kérdés:
PDO lekérdezés $result->execute(array..
végigmegyek az elemeken:foreach($result as $data) { .. } a $data szépen visszaadja az értékeket.
Ha viszont utána (és nem benne!) csinálok még egy foreachet, akkor a $data már teljesen üres lesz, mintha a $result elbandukolt volna a végére és nem állna vissza.
Ötletek?
Make Love not war!
-
fordfairlane
veterán
válasz SirRasor #14507 üzenetére
A PDO statement nem csupán egy lekérdezés eredménye, hanem komplex objektum, aminek része az eredményhalmaz is. Én a helyedben kiszedném egy tömbbe.
$tomb = $result->fetchAll();
Tömbön pedig nem gond többször iterálni.
És átnevezném a $result - ot $statement -re vagy $stmt -re, hogy beszédesebb neve legyen. Vagyis:
$stmt = $pdo->prepare($querystr);
$stmt->execute($queryparams);
$result = $stmt->fetchAll();
foreach(...)
reset
foreach(...);[ Szerkesztve ]
x gon' give it to ya
-
SirRasor
őstag
válasz fordfairlane #14508 üzenetére
Közben összevontam rafináltan 1-be, de azért thx; így már kezd világosodni a dolog
eddig $query elnevezést használtam, csak neten egyre több helyen láttam kiírva a $result-ot erre a helyre, de akkor átpártolok az $stmt-re. Mondjuk én is $pdo-val példányosítom a pdo-t
Make Love not war!
-
fordfairlane
veterán
válasz SirRasor #14509 üzenetére
Mondjuk én is $pdo-val példányosítom a pdo-t
Az mindegy, az az általános db interfész, amin keresztül érkezik a többi. Kvázi factory osztály, azon kívül, hogy ennek a konstruktorával van megoldva a db kapcsolat kiépítése, és a főbb konfigurációs paraméterek átadása.
A statement már specifikusabb dolog, PHP-s reprezentációja egy adott lekérdezésnek, annak paramétereinek és annak eredményének. A result meg sokszor csak egy tömb, már nálam az is objektum szokott lenni, hogy legyen típusa annak is.
[ Szerkesztve ]
x gon' give it to ya
-
Sk8erPeter
nagyúr
Egyszerűbben megközelítve a kérdést: amennyiben írsz egy nagyon egyszerű, egysoros batch-fájlt, aminek az egyetlen dolga csupán az utorrent.exe elindítása, majd pedig ezt a batch-fájlt (nem közvetlenül az utorrent.exe fájlt!) próbálod futtatni exec() függvénnyel, akkor mi a helyzet?
Sk8erPeter
-
Sk8erPeter
nagyúr
válasz SirRasor #14507 üzenetére
http://stackoverflow.com/questions/15385965/php-pdo-with-foreach-and-fetch/15386195#15386195
Szerencsére elmagyarázták helyettem isSk8erPeter
-
Kurik
tag
válasz Sk8erPeter #14511 üzenetére
A feladatkezelőbe berakja, de nem normálisan fut, mint az legelső kommentemben írtam. "feladatkezelőbe látszik, de maga a program nem indul el. Ez abból is látszik, hogy ilyenkor 5MB ramot fogyaszt, viszont ha kézzel indítom el 25MB-ot."
Viszont ha bat-et kézzel elindítom (kettőt rákattintok ) elindul rendesen.
Ha tévedek, ki lehet javítani :)
-
-
Sk8erPeter
nagyúr
válasz Tele von Zsinór #14514 üzenetére
Na ez nem egy rossz gondolat. Alapból valóban az %appdata%\uTorrent könyvtárban keresgéli a settings.dat, resume.dat fájlt, ami felhasználóhoz kötődik, abban az esetben, ha normál telepítés van fent. A 3.xx akárhányadik verziótól kezdve lehet ELEVE portable-módban is telepíteni.
A 2.x változatoknál az jelenti a portable módot, ha az utorrent.exe könyvtárral azonos könyvtárban található a settings.dat, resume.dat fájl. Ekkor az %appdata%\uTorrent könyvtár tartalmával nem törődik, nem keresi, ezzel tehát áthidalható lenne a probléma (ha eleve portable-módban próbálná meg használni, az %appdata%\uTorrent könyvtárban lévő adatok gondos átmásolásával az utorrent.exe mellé, persze backup nem árt).
Legalábbis feltételezem, nem szeretné, ha ugyanannak a felhasználónak a nevében futna a php-folyamat is.Sk8erPeter
-
Kurik
tag
válasz Sk8erPeter #14516 üzenetére
Nagyon szépen köszönöm mindenkinek a segítséget életre kelt a technika.
Ez a másolás hiányzott...Ha lenne valaki ilyen elvetemült mint én, ne lepődjön meg csak háttérbe fut. Nekem ez nem jelentett problémát mivel ott a WebUI.
Ha tévedek, ki lehet javítani :)
-
Admin felületről szeretnék egy olyat, hogy listázza ki a postokat (ez már adott volt), mellé pedig egy törlési lehetőséget, ami értelemszerűen sql-ből kiszedi. Találtam egy topikot a neten, ott vázoltak is egy komplett scriptet, de valami nem okés, üresen lefut eredmény nélkül.
Vázolom, már átalakítva:
teszt.php
<?php
include '../connect.php';
echo "<table class='lista' border='0'>
<tr>
<th>ID</th>
</tr>";
$eredmeny = mysql_query('SELECT * FROM posts');
while ($row = mysql_fetch_array($eredmeny))
{
echo "<tr>";
echo "<td>" . $row['ID'] . "</td>";
echo '<form action="delete.php" method="post">';
echo '<input type="hidden" name="delete_id" value='.$row['ID'].'" />';
echo '<input type="submit" value="Törlés" />';
echo '</form>';
echo "</tr>";
}
echo "</table>";
?>delete.php
<?php
if(isset($_POST['delete_id']) && !empty($_POST['delete_id'])) {
$delete_id = mysql_real_escape_string($_POST['delete_id']);
mysql_query("DELETE * FROM posts WHERE `ID`=".$delete_id);
}
header('Location: teszt.php');Hiba nélkül lefut, de semmit nem csinál. Itt a thread, ahonnan néztem. [link]
[ Szerkesztve ]
-
-
válasz Peter Kiss #14519 üzenetére
Már próbáltam, hátha az a hiba, de így sem. Pontosabban ugyanúgy eseménytelenül lefut és visszaadja az oldalt. Éppen az, hogy én annyira nem értek hozzá, szóval így nem fogom tudni megmondani mi a hiba.
[ Szerkesztve ]
-
fordfairlane
veterán
A hibajelzés valószínűleg ki van kapcsolva, így egyáltalán nem eseménytelen, csak épp nem látod, hogy mi történik.
1. delete.php-nak is szüksége van mysql connectionra, akárcsak a listázónak.
2. A form legyen td-ben.
3. input mező value-jának csak egyik oldalán van idézőjel, legyen mindkettőn.value='.$row['ID'].'" />'; helyett value="'.$row['ID'].'" />';
[ Szerkesztve ]
x gon' give it to ya
-
válasz fordfairlane #14521 üzenetére
1. Visszakerült
2. Majd ha működik kap rendes formát, most csak hánytam
3. Jogos észrevétel ... éés valószínűleg a hiba oka is volt, mivel most már jó. Ja meg igen, a DELETE után a csillag nem kell, egy kísérletezésből ott maradt.Köszönöm szépen a gyors segítséget
[ Szerkesztve ]
-
MODERÁTOR
"isset($_POST['delete_id']) && !empty($_POST['delete_id'])"
Ez kb. felesleges redundancia. Az empty fügvény az egyben ellenőrzi, hogy a változód létezik, továbbá azt is nézi, hogy van értéke. Ennyi bőven elég:
"! empty($_POST['delete_id'])"
mobal,
"Ott szimatol a sarkadban vasfogait csattogtatva, minden egyes hétköznapod: kirúzsozott medvecsapda."
-
Sk8erPeter
nagyúr
-
fordfairlane
veterán
válasz Speeedfire #14524 üzenetére
Ha a változó nem létezik, akkor sem generál warningot. Nem függvény, hanem nyelvi szerkezet. Olyan, mint az isset, csak még pluszban leellenőzi, hogy false-e a tartalom.
[ Szerkesztve ]
x gon' give it to ya
-
MODERÁTOR
válasz Speeedfire #14524 üzenetére
Ebben az esetben jó lesz, mert ugye egy "ha" feltételben van. De ha jobban tetszik
if (isset($_POST['delete_id']) && $_POST['delete_id'] != null)
Szerk.: van itt valaki aki komolyabban ért a Mustace template kezelő motorhoz?
mobal,
[ Szerkesztve ]
"Ott szimatol a sarkadban vasfogait csattogtatva, minden egyes hétköznapod: kirúzsozott medvecsapda."
-
Sk8erPeter
nagyúr
válasz fordfairlane #14526 üzenetére
"Olyan, mint az isset, csak még pluszban leellenőzi, hogy false-e a tartalom."
Mondjuk ezzel kapcsolatban lehet, hogy vki számára félrevezető a php.net-en lévő infó, hogy "A variable is considered empty if it does not exist or if its value equals FALSE", mert inkább a visszatérési értéknél írtak tűnik egyértelműbbnek a leírás: "Returns FALSE if var exists and has a non-empty, non-zero value.""The following things are considered to be empty:
"" (an empty string)
0 (0 as an integer)
0.0 (0 as a float)
"0" (0 as a string)
NULL
FALSE
array() (an empty array)
$var; (a variable declared, but without a value)"Az "if its value equals FALSE" olyan, mintha ilyen ellenőrzés történne: ($var === FALSE), pedig a listából látható, hogy nem erről van szó, és a visszatérési értéknél írtak picit mintha inkonzisztensek vagy ellentmondóak lennének az első idézett állítással (mert a FALSE is empty, de még más is).
[ Szerkesztve ]
Sk8erPeter
-
MODERÁTOR
Azt meg lehet csinálni egy sql query-vel, hogy először elmentek egy tag-et, majd egy másik táblázatba beállítom annak az id-ját?
mobal,
"Ott szimatol a sarkadban vasfogait csattogtatva, minden egyes hétköznapod: kirúzsozott medvecsapda."
-
Kurik
tag
válasz Sk8erPeter #14525 üzenetére
Úgy érem, hogy taskmgr-be látszik, de a tálcán nem. Ha a GUI szó alatt ezt (Graphical User Interface) érted, akkor ilyen nincs, viszont van a WebUI ami nekem teljesen megfelel.
Ha tévedek, ki lehet javítani :)
-
Sk8erPeter
nagyúr
Ezt meg tudnád fogalmazni érthetőbben, hogy mi a pontos cél, és egyáltalán mire lesz ez jó?
(#14530) Kurik :
Ja, hát úgy értettem, hogy a kiszolgálógépen, ahol a batch-progit végül is lefuttatod az exec() fv.-nyel, ott megjelenik-e a µTorrent felhasználói felülete, vagy sem a fv.híváskor - ezek szerint nem, csak háttérben futkorászik, de nem gond, mert nincs rá szükséged.[ Szerkesztve ]
Sk8erPeter
-
MODERÁTOR
válasz Sk8erPeter #14531 üzenetére
Van egy forrás amit parsolok időnként. Abba vannak keresőszavak és azt akarom eltárolni. Adatbázisba pedig egy az n kapcsolat van az elemek és a keresőszaka között. Na most az új keresőszavak tárolását akarom egy tranzakcióba sűríteni (tehát kereső szó + kapcsolat), de van egy olyan érzésem nem lehet.
Esetleg tárolt eljárással?
"Ott szimatol a sarkadban vasfogait csattogtatva, minden egyes hétköznapod: kirúzsozott medvecsapda."
-
-
Sk8erPeter
nagyúr
Én csak azt nem értem még mindig, hogy a parse-olásnak, meg a tageknek mi köze van az adatbázishoz, meg a konkrét queryhez, amivel feltöltöd. Először parse-olod az adatokat PHP-vel gondolom, kinyered a kapott eredményből a neked szükséges szavakat, aztán pedig azokat a szavakat el akarod tárolni adatbázisban, mármint az összeset, nem? Most az a kérdés igazából, hogy hogyan állíts össze egy query-t PHP-vel? VAGY pedig az a kérdés, hogy mondjuk hogyan csináld meg azt, hogy az egyik táblában tárolod a keresőszavakat, aztán van egy kapcsolótáblád, amibe meg be akarod nyomni az adott szóhoz tartozó id-t. Na de ehhez megint nem szabadna, hogy köze legyen bármilyen tagnek is, hiszen azt fel kellett, hogy dolgozd az alkalmazásodban, de nyilván nem egy query-ben kellene ezt megtenned. Tárolt eljárással a kapcsolótáblás feltöltés elintézése is amúgy megoldható, ja, ha ez a kérdés, de még megoldható hatmillióféleképpen. Csak kicsit kuszálódtak itt a dolgok. DE akár azt is megcsinálhatod, hogy amennyiben auto_increment meződ van a keresőszavakat tároló tábládban, akkor megjegyzed, honnan kezdted feltölteni, és az annál nagyobbakhoz tartozóakat meg a feltöltés után nyomod a kapcsolótáblába... De ennél értelmesebb megoldás is nyilván lehet, ha kicsit jobban megértjük, mit akarsz. Na jó, én értem, mire gondolok, elég kuszán fogalmaztam, csak most nincs energiám átfogalmazni érthetőbben, de hátha valami így is átjön. Hozzáteszem, Te sem fektettél túl sok energiát a kérdésed szabatos megfogalmazásába, és még a végére engem is belekavartál, aztán elkedvetlenedtem.
[ Szerkesztve ]
Sk8erPeter
-
Speeedfire
nagyúr
válasz Sk8erPeter #14525 üzenetére
Valahol mintha azt olvastam volna, hogy nem ajánlott az empty, inkább az isset. Nem tudok rá érvelni, mert nekem csak ennyi rémlik.
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
válasz Speeedfire #14535 üzenetére
Minden attól függ, mit szeretnél elérni milyen lehetséges adatokkal. Ha valaki azt mondja bármelyikre is, hogy ez az ultimate good solution, akkor az idióta.
-
MODERÁTOR
válasz Sk8erPeter #14534 üzenetére
EGY tranzakcióz belül KÉT műveletet KÉPES a mysql végrehajtani ÚGY, hogy az egyik paramétere az ELSŐ tranzakció során születik meg?
[ Szerkesztve ]
"Ott szimatol a sarkadban vasfogait csattogtatva, minden egyes hétköznapod: kirúzsozott medvecsapda."
-
Sk8erPeter
nagyúr
válasz Peter Kiss #14536 üzenetére
(#14535) Speeedfire :
Ahogyan arra előttem tanult kollégánk elég tömören rávilágított, ez a kijelentés ebben a formában értelmetlen. Szerintem ha erről olvastál, akkor az valami olyasmiről szólhatott, hogy nem biztos, hogy jó, ha mindenáron lustán rászokunk az empty() túlzott használatára validálásnál vagy egyéb esetekben, jobb néha a kódban egyértelműen az elvárt adattípusra vizsgálódni (pl. NULL-ról vagy empty stringről van-e szó, FALSE-ról, vagy másról), igaz, az empty() - mint látható az ennek megfelelő esetekből - elég sok lehetőséget lefed. Persze csak tipp, hogy valami ilyesmire gondolhattál. De tényleg "attól függ".(#14537) mobal :
látom szereted lerövidíteni kifejtés helyett.
Hát erre most azt tudom mondani, hogy olvasd el itt Athlon64+ második bekezdését, sokkal rövidebben és lényegre törőbben sikerült válaszolnia, mint ahogy én előbb próbálkoztam neked egy jó hosszú hsz.-szel, amire Te visszaböfögtél egy mondatot, azt' részedről elintézve.Remélem, értékeled, hogy most a moderátori kedvedért egy hsz.-be nyomorítottam több hsz.-t... Akármilyen gusztustalan is, több hsz. írása helyett.
[ Szerkesztve ]
Sk8erPeter
-
MODERÁTOR
válasz Peter Kiss #14533 üzenetére
Köszi. Fogalmam sincs, ezért kérdeztem.
Speeedfire: nem azért olvastad, hogy nem jó mert esetleg nincs semmi hibaüzenet?
[ Szerkesztve ]
"Ott szimatol a sarkadban vasfogait csattogtatva, minden egyes hétköznapod: kirúzsozott medvecsapda."
-
MODERÁTOR
válasz Sk8erPeter #14540 üzenetére
"A variable is considered empty if it does not exist or if its value equals FALSE. empty() does not generate a warning if the variable does not exist."
A dokumentáció alapján erre gondoltam.
[ Szerkesztve ]
"Ott szimatol a sarkadban vasfogait csattogtatva, minden egyes hétköznapod: kirúzsozott medvecsapda."
-
Sk8erPeter
nagyúr
De nem is meglepő, hogy nem generál warningot, mivel az empty() az isset által végzett feladatot is lefedi, ahogy meg is beszéltük, tehát a változó beállítottságát/létezését is vizsgálja, nemcsak annak "ürességét", meg az isset()-hez hasonlóan erre is vonatkozik, hogy "this is a language construct and not a function".
De ezt Te is vágod, hiszen pont erre hivatkoztál itt, hogy redundáns lenne mindkettőt használni egy adott változóra.No de igazából az eredeti felvetést kellene megfejteni inkább, hogy mi az, hogy "nem ajánlott az empty".
[ Szerkesztve ]
Sk8erPeter
-
MODERÁTOR
válasz Sk8erPeter #14542 üzenetére
Nem tudok már mire gondolni, mert érzésem szerint "több" (az empty) és ahogy te írtad: "az empty() az isset által végzett feladatot is lefedi". Ha nem jobb de szerintem biztos, hogy nem rosszabb megoldás.
Csak találgattam.
mobal,
[ Szerkesztve ]
"Ott szimatol a sarkadban vasfogait csattogtatva, minden egyes hétköznapod: kirúzsozott medvecsapda."
-
Speeedfire
nagyúr
válasz Peter Kiss #14536 üzenetére
Valóban.
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Speeedfire
nagyúr
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Zedz
addikt
Sziasztok, van ez a kódom:
class Login extends CI_Model{
public function login(){
if(array_key_exists("login",$_POST)){
$username = $_POST['username'];
$password = $_POST['password'];
$query = $this->db->query("SELECT * FROM users WHERE nev='$username'");
if($query->num_rows()>0){
$this->session->set_userdata('logged_in');
}
else{
echo "rossz e-mail cím vagy jelszó";
}
}
}
}A gond az, hogy amit kiechozok azt 2x írja ki. Miért? Codeigniterben írok most egy tesztoldalt, még csak ismerkedem a CI-vel, szóval lehet valahol más lesz a gond.
A választ előre is köszönöm!
-
-
Zedz
addikt
válasz Peter Kiss #14547 üzenetére
Miért? Mi a baj vele? :S Sajnos a vizsgára készülő oldalnak CI-ben kell íródnia, a drágalátos Smartyval karöltve.
-
-
fordfairlane
veterán
Új hozzászólás Aktív témák
- Honor Magic6 Pro - kör közepén számok
- bb0t: Gyilkos szénhidrátok, avagy hogyan fogytam önsanyargatás nélkül 16 kg-ot
- Adóbevallás
- Skoda, VW, Audi, Seat topik
- Politika
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- exHWSW - Értünk mindenhez IS
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Parfüm topik
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- További aktív témák...
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: Ozeki Kft.
Város: Debrecen