- Lesifotón és renderképen a Huawei Mate 70 Pro
- Fotók, videók mobillal
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Huami Amazfit Bip okosóra
- OnePlus 7T - távolról pont tökéletes
- Samsung Galaxy Z Fold4 - egyre megy, honnan nézed
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Okosóra és okoskiegészítő topik
- Motorola Edge 40 - jó bőr
- Honor Magic5 Pro - kamerák bűvöletében
Új hozzászólás Aktív témák
-
Panhard
tag
Ha böngészőben megnyitom a külső weboldalt, és ugyanazzal a munkamenettel egy másik fülön lekérdezek ugyanarról a külső szerverről json-t, akkor válaszol. Ha egy böngészőben új munkamenetnél először nem nyitom meg a külső weboldalt, hanem egyből a json-t akarom lekérdezni, akkor 403-es hibát ad vissza. Gondolom mert nincs munkamenet, nem tud azonosítani.
Olyan lehetőség nincs, hogy az xampp szerveren a weboldal (php fájl) ami a gépemen fut, úgy kérje le a külső weboldalt, mint egy böngésző.
A lényege az lenne az egésznek, hogy a gépemen van egy xampp webszerver, ami egy külső szerverről kér le adatokat és dolgozza fel, jeleníti meg. -
-
Wyll
őstag
Sziasztok
Egyáltalán nem értek a PHP-hoz, de van egy problémám, amire lehet hogy a php egy jó megoldás lenne.
Excel-be szeretnék beolvasni egy konkrét weboldalról (ami egy nagykereskedőé) származó XML fájlt. Szerencsére az Excel-nek akár egy URL is megadható forrásnak, ha az egy xml fájlt ad vissza válaszul. Feltételezem, hogy az excel GET metódussal címzi a megadott URL-t.
Van viszont két probéma:
- erről a weboldalról tudtommal POST metódussal lehet csak beszerezni az xml-t, amiben meg kell adni egy user/pass párost
- a weboldalnak általában több mint 30mp-ig tart, míg legenerálja a fájlt mielőtt elkezdi küldeni (~2,5MB az xml), tehát jó ideig nem szabad timeout-olniArra gondoltam, talán meg lehetne azt csinálni, hogy az Excel-nek egy egyénileg megírt, a hdd-n lévő php fájlt adok meg URL gyanánt, ami a háttérben megcsinálja a POST-os kérést a kérdéses weboldallal, és az Excel-nek a GET-jére válaszul odaadja az XML-t. (Vagy még fapadosabb változatban, kiteszi vinyóra maga mellé a kapott xml-t, és akkor azt enné meg az Excel.)
Mennyire lenne bonyolult írni egy ilyen PHP-t? Én úgy képzelem, hogy alig Ha ez így van, akkor valaki jófejségből megírná nekem vagy segítene benne? Edukáljatok légyszi, hogy mennyire hülyeség vagy jóság ez az elgondolás! Köszönöm!
[ Szerkesztve ]
Megbízhatóságom: http://phmegbizhatosag.atw.hu/phtabla.php?nev=Wyll
-
SunyaMacs
aktív tag
Nem annyira célszerű Excelt használni adatbázis célokra, viszont szerintem teljesen megoldható. Viszont előtte nem árt, ha letisztázod azt a nagykerrel, hogy használhatod-e az ő rendszerüket erre célra, hogy később ne legyen probléma belőle.
Azt nem tudom, hogy mennyire kell automatizáltnak lennie a folyamatnak, viszont én úgy oldanám meg, hogy van egy oldal, ami a nagykertől való lekérésért felel. Ezen a php timeout megfelelőre állítva, és a végeredményt egy helyi fájlba mentené el pl. timestamp alapján. Ezt lehetne automatikusan futtatni Windowson task-ként, Linuxon cron-nal, persze megfelelő gyakorisággal.
Az Excelnek lenne egy másik oldal, ahol dinamikusan a legutóljára letöltött adatokat kapná meg.
Néhány link, ami segíthet:
PHP POST kérés
Windowson PHP CLI futtatás -
pelyib
tag
Kicsit olyan erzesm van mintha a befott rakna el a nagymamat.
Mi lenne, ha inkabb egy olyan scriptet irnal ami rendesen tudja kezelni a HTTP requesteket, lementi az eredmenyt, es a letrejott fajllal megnyitja az Excel-t.
Ezt a script-t olyan nyelven irod amit ismersz es nem kell megeroszakolni egy POST + request timeout miatt (PHP ilyen).
De valszeg PowerShell / Bash boven elegendo lehet.Amit te akarsz ott nem csak 1 PHP script kell, de kell egy webserver is.
Amugy nem nehez, (#19955) SunyaMacs elso linkje jo lehet, kulso link-nek a valaszat ki kell iratni a kimenetre, es beallitani a content-type-t a megfelelore. -
sztanozs
veterán
Ezt (post request-et) vba-ban is meg lehet csinálni. Vagy powershellben, és a lementett xml fájlt már meg tudod nyitni excelben ha akarod.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
bucihost
senior tag
Sziasztok!
Adott az alábbi kód, valamint egy vicc adatbázis amelyben az üres sor lenne az elválasztója 1-1 viccnek.<?php $file = 'vicc.txt';
$read = file($file);
$rand_keys = array_rand($read, 2);
$joke = $read[$rand_keys[0]];
echo $joke;
?>
A vicc.txt tartalma:Margarin:
Két egér beszélget a kamrában:
- Rád fog esni a margarin!
- Rámamargarin?
Hogy kapta Benedek Elek a nevét?
Anyukája reggel beszólt a kisfiának:
- Benn vagy még az ágyban?
- Benne, de kelek.
Trükk:
- Mondja Kovács bácsi, maga mit szokott csinálni, ha este nem tud elaludni?
- Én? Elszámolok háromig, és már alszom is.
- Tényleg? Csak háromig?
- Háromig, de van úgy, hogy fél négyig is.Ugye maga a php soronként szedi szét..
Hogyan tudnám a legegyszerűbben megoldani, hogy 1-1 vicc legyen ne pedig 1-1 sor az 1-1 array element? Vagy meg lehet egyáltalán oldani?
[ Szerkesztve ]
-
whYz
őstag
válasz bucihost #19958 üzenetére
A
file
helyett hasznaljfile_get_contents
-et, es apreg_split
-el szet tudod darabolni az ures soroknal.$file = 'vicc.txt';
$read = file_get_contents($file);
$split = preg_split("#\n\s*\n#Uis", $read);
$rand_keys = array_rand($split);
$joke = $split[$rand_keys];
echo $joke;
[ Szerkesztve ]
-
-
csanyiadam
tag
Sziasztok. Tudtok esetleg javasolni olyan YouTube csatornákat / Facebook oldalakat, amelyeket érdemes követni PHP témában? Magyar és angol nyelv is jöhet. Köszönöm szépen.
-
Ispy
veterán
Sziasztok!
Ide is berakom a nyügöm, hátha jön valami ötlet.
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
supercow
őstag
A hivatalos drivert próbáltad? Ez kell neked, a megfelelő verzió! Nagyon fontos hogy eltaláld az Sql Server és php verziónak megfelelő telepítőt. Lehet hogy kell majd cserélgetned, ha jól emlékszem nekem 3-4 fajtát kellett próbálnom mire öszejött.
https://docs.microsoft.com/en-us/sql/connect/php/microsoft-php-driver-for-sql-server?view=sql-server-ver15In nomine Pasta, et Fusilli, et Spaghetti Sancti. Ramen.
-
Ispy
veterán
válasz supercow #19964 üzenetére
Van egy azure virtuális szerverünk, ahol már fut a xampp, onnan szedtem le a fájlokat, de most hogy mondod nekem 17-es sql szerver van a gépemen, a virtuális gépen meg 14-es. Lehet ezért szopat?
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
Ispy
veterán
válasz instantwater #19967 üzenetére
Nem tervezek webfejlesztő lenni, ez csak egy kis kirándulás, nem ez a fő profil.
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
pelyib
tag
válasz csanyiadam #19962 üzenetére
Mivel engem is erdekel a tema, hatha a tobbiek is erot kapnak.
Bar nem Youtube vagy FB de a ceghez a php[architect] magazine jon (sajnos elofizeteses), neha van benne erdekes cikk. -
Ispy
veterán
Van egy php kódom, ami egy apit hív meg és az eredményt visszadja xml-ben. Tök jól megy az egész, de ha a 2 bemenő paramétert nem url-ből adom át, hanem post bodyban, akkor az url string a
file_get_contents
meghívásakor megváltozik és az &-ből & lesz. Ha simán kiprintelem a hívás előtt az url-t, akkor még jó (látszólag, lehet már akkor is van benne valami fos karakter, ami nem látszik).Most azt nem tudom, hogy ez php miatt van így, xampp miatt vagy a postman cseszi-e el?
Guglival annyira jutottam, használjak inkább curlt...
[ Szerkesztve ]
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
agoka07
senior tag
Sziasztok!
Egy Wordpress oldalon dolgozom és egy plugint használok amiben szeretném megjelenítni a kategóriák leírását a kategória címek alatt. Ebbe a részbe kellene beilleszteni:<?php
if (!defined('ABSPATH')) {
exit();
}
$defaults = [
'step' => null,
'showCount' => false,
'fields' => []
];
$arguments = isset($arguments) ? array_replace_recursive($defaults, $arguments) : $defaults;
?>
<input type="hidden"
name="value[<?php echo esc_attr($arguments['step']->id); ?>][]"
value="">
<?php foreach ($arguments['fields'] as $field) { ?>
<figure class="<?php
echo esc_attr("wcsf-field wcsf-field-$field->value wcsf-field-image-checkbox");
echo $field->disabled ? ' disabled' : '';
?>">
<label class="wcsf-field-label">
<input type="checkbox"
class="wcsf-field-input"
data-component="<?php echo esc_attr($field->component); ?>"
data-id="<?php echo esc_attr($arguments['step']->id); ?>"
name="value[<?php echo esc_attr($arguments['step']->id); ?>][]"
value="<?php echo esc_attr($field->value); ?>"
<?php
echo $field->checked ? ' checked ' : '';
echo $field->disabled ? ' disabled ' : '';
?>>
<?php
echo $field->thumbnail
? wp_get_attachment_image(
$field->thumbnail,
$arguments['step']->thumbnailSize,
false,
['class' => 'wcsf-field-thumbnail']
)
: '';
?>
<span class="wcsf-field-name"><?php
echo wp_kses_post($field->name);
if ($arguments['showCount'] && isset($field->count)) {
echo ' <span class="wcsf-field-count">(' . wp_kses_post($field->count) . ')</span>';
}
?></span>
</label>
</figure>
<?php } ?>
Tudtok ebben nekem segíteni? Előre is köszönöm!
[ Szerkesztve ]
S35-3310-1600-KU380-W300i-Shine-C3050-Spiro-858 Smart-SK17i-Galaxy S-Note 1-Galaxy S4-G4-S6 Edge-Note 8
-
supercow
őstag
válasz instantwater #19973 üzenetére
Ott van hogy Wordpress, abban mindent szabad
In nomine Pasta, et Fusilli, et Spaghetti Sancti. Ramen.
-
instantwater
addikt
-
supercow
őstag
válasz radi8tor #19976 üzenetére
Élek csak annyi melóm van hogy nem látok ki belőle. Mindenféle Laravel projektet meg legacy cuccot (többnyire saját spaghetti kód a 2000es évekből ) viszek egyszerre 3-4nél kérdezik szinte naponta “na mik a fejlemények?” és ez megy évek óta.
Mondjuk 18 éve tolom a social distancing - home officet, egy ideje nincs kihez szólnom egy szót élőben csak az asszony és a szomszéd az összes ismerős - haver elkopott.In nomine Pasta, et Fusilli, et Spaghetti Sancti. Ramen.
-
Ispy
veterán
Küzdök ezzel a html-js-php dologgal, érteni még nem értek hozzá, de már legalább úgy megy az oldal, ahogy szeretném.
Viszont a következő stepnél már a koncepció is hiányzik, nem tudom egyáltalán mi erre a jó megoldás...
Szóval van egy .net-es alkalmazás és az lenne a feladat, hogy a user rányom egy gombra és ennek hatására megnyílik a default böngészőben az oldal. Eredetileg a .net webbrowser toolját akartam használni, de a jó öreg IE motor azonnal dobott egy hátast a külső js api hívásakor, szóval ez most felejtős (.net-hez van valami webview néven futó nuget, arra majd még rápróbálok, hátha, az már edge motort használ).
A gondom az, hogy .net-ből kéne ennek az oldalnak átadnom paramétereket post bodyban, mert a kliens oldalon futó js kód meghív egy apit, aminek kellenek ezek az adatok.
Az első és egyetlen gondolatom az volt, hogy csinálok .net-ben egy httprequestet és szerver oldalra áttolom a paramétereket, majd a visszakapott id-t átadom a kliensnek urlben, ami aztán lekéri a szerverről ezeket. Na, most ez így elég nyakatekertnek hangzik és nem tudom van-e ennél valami szabványosabb eljárás, vagy szebb megoldás (biztos van ).
[ Szerkesztve ]
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
csanyiadam
tag
Sziasztok, az alábbi problémám lenne, amelyben szeretnék tőletek segítséget kérni, tekintettel arra, hogy most tanulom a PHP-t.
Van egy több lépcsős formom, amelynek az első fázisában van egy checkbox rész, ahol jelenleg 3 választható mező van. Ezeknek a checkboxoknak az értékeit egy MySQL táblában tárolom "ID" és "nev" értékekekkel. Amennyiben kiválasztok egy checkboxot és elmentem a formot, akkor egy másik adattáblában létrehoz egy új sort és a megadott oszlophoz beírja az ID értéket (nevet nem tárolok az elmentett űrlap adatok között csak ID-t). Abban az esetben, ha több box is kiválasztásra került, akkor a következő módon mentődik el az adat ugyanabban a cellában: "1", "2", "3".
Azt szeretném, hogy az eredmény oldalon, amikor kiíratom a sorokat ebben a cellában ne az "1", "2", "3" ID számokat írja ki, hanem menjen vissza a másik táblához és abban az esetben, ha ID egyezőséget talál, akkor az ID-hoz tartozó nevet írja ki.
A helyzetet az is bonyolítja, a többszintű mélység miatt, hogy ID azonosítókat több táblából is hivatkozom, ezért majd a kiírásnál több táblában kellene ellőriznie a neveket.
Mivel tudom ezt az ID -> név összevonást a legegyszerűbben megcsinálni?
Remélem érthető voltam, de szóljatok, ha keszekusza lett.
Köszönöm szépen a segítséget.
-
venic
kezdő
Sziasztok!
Még nagyon kezdő vagyok, bocsánat a nagyon alap kérdésért
Az lenne a problémám, hogy az index.php fájlban van egy $mennyiseg változó deklarálva, és van egy Étel nevű osztály külön fájlban.
Ebben az Étel osztályban szeretném egyik metódusban felhasználni a $mennyiseg változót.
Az lenne kérdésem, hogy hogy lehet használni ezt a változót az osztályban, szóval mi a szintaktikája? Ha csak simán beirom a $mennyiseg-et , az úgy nem működik, nem ismeri fel.Köszönöm előre is a segítséget.
-
pelyib
tag
Be kell tolteni a masik fajlt amibol szeretnel hasznalni valamit.
Ennek tobb megoldasa lehet:
- include, require es tarsai
- sajat autoloader irasa (nagyon nem ajanlott!)
- composer hasznalata (elsore lehet soknak tunik de iszonyat egyszeruve teszi az eletet)Ha csak valamit patkolsz es csak mukodjon, akkor 1. megoldas jo lehet.
Ha tanulsz es erdekel a tema akkor elobb az 1. megoldassal gyors siker lehet, es kozben a 2. megoldasrol olvasni kiprobalni.
Udv a klubban. -
pelyib
tag
Kicsit osszezavarsz, azt irtad, hogy: "úgy megy az oldal, ahogy szeretném" aztan megse?
Nemreg nekunk volt egy hasolno projectunk, PHP backend es .net frontend app (ha jol remlek, de en a PHP-s oldalon voltam) + webview.
Ugy emlekszem, h ott barmelyik bongeszot be tudtak huzni a sracok, elejen nalunk is volt aggodas, de talaltak ra megoldast.
Viszont nalunk ugy ment, h a .net app kommunikalt a PHP app-l es atadta az adatot a webview-ban futo kis webapp-nak.
Valahogy igy:
webapp <-> .net <-> PHP -
Doink
aktív tag
Átadod az osztály valamelyik metódusának ahol használnád vagy simán a konstruktornak:
class Etel {
private $mennyiseg = 0;
private $ar = 0;
public function __construct($nettoPrice, $quantity) {
$this->ar = $nettoPrice;
$this->mennyiseg = $quantity;
}
public function bruttoAr($afa = 1.27) {
return $this->ar * $this->mennyiseg * 1.27;
}
public function setMennyiseg($quantity) {
return $this->mennyiseg = $quantity;
}
}
// másik file-ban
require_once("etel.php");
$mennyiseg = 3;
$etel = new Etel(1599, $mennyiseg);
echo $etel->bruttoAr();
echo $etel->bruttoAr(1.25);
$etel->setMennyiseg($mennyiseg * 100);
echo $etel->bruttoAr();[ Szerkesztve ]
-
pelyib
tag
válasz csanyiadam #19979 üzenetére
Ha jol ertem akkor az elso query-nek a checkbox fieldjet explodolni kell es a kapott array-l le kell kerni a tobbi tablabol.
De ha jol ertem akkor neked egy kapcsolo tabla (Association table) kell ami a ket tabla kozotti kapcsolatokat tartalmazza.
Valahogy igy:
form
- form_idform_checkbox
- form_id
- checkbox_idcheckbox
- chekcbox_id
- name"ID azonosítókat több táblából is hivatkozom"
Ugyan azzal az ID-val masra hivatkozni nem szerencses! -
venic
kezdő
válasz pelyib #19981 üzenetére
Nagyon köszi a választ.
Igen, tanulni szeretnék és fejlődni és ennek érdekében gyakorolok
Az index.php fájlban include-olom a etel.php fájlt és akkor az etel.php-ban meg include-oljam a index.php-t? Ez igy egyelőre nem stimmel, nem jön be az oldal (mintha valami végtelen ciklusba került volna).
De utánanézek a többi dolognak is amiket irtál, köszi szépen. -
pelyib
tag
Gondolom (#19983) Doink kommentjet lattad mar. Pontosan ugy kell, nagyon szepen megirta.
Es igen az vegtelen ciklus (require_once megoldhatja ezt is).Esetleg meg olvasnivalo front controller + rewrite rule
-
Ispy
veterán
válasz pelyib #19982 üzenetére
A weboldalt megoldottam, a gond az, hogy a default webbrowser tk. egy ie11, ami alapból egy fosch, de szerencsére nugetből lehet .net alá telepíteni a webview objektumot, ami már edge, ezzel remekül megy a dolog.
Szóval a megy az oldal, azt úgy értettem, hogy fixen bedrotozott paraméterekkel az csinálja, amit kell. Most változott a koncepció és átrakom az egész üzleti logikát .net-ből php szerverre, szóval a .net meghív egy php kódot, ami létrehoz azure táblában egy requestet, és visszadja a komplett url-t, amit csak meg kell nyítni és majd a javascript kód lehívja a requestben tárolt paramétereket.
Szóval...
.net http hívás php oldal -> létrejön a request -> visszajön az url -> .net-ből megnyílik a webview -> js kód leszedi a requestből, ami elő lett neki oda készítve (ajax hívás) -> bodogság
Mondjuk elég ízgi egyszerre vb.net-ben, ms sql-ben, js-ben és php-ban programozni, néha keverem az utasításokat.
[ Szerkesztve ]
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
bucihost
senior tag
Sziasztok!
Adott az alábbi kód. Ami nem akar működni...
if(isset($_GET['disable'])){
$disid = $_GET['disable'];
$file = 'calendar.xml';
$xmlstr = file_get_contents($file);
$xml = new SimpleXMLElement($xmlstr);
echo $xml->event[$disid]->name;
}
$disid értéke szám.
Amire az alábbi hibaüzenetet kapom:
Notice: Trying to get property of non-object in .....
ha a $disid helyére én kézzel írom be a számot ( echo $xml->event[0]->name; ) akkor működik.Mi lehet a nyűge??
-
#68216320
törölt tag
Sziasztok.
Kis segítséget kérnék "dióhéjban", hogy hogyan is működik a composer?
Van egy composer.phar fájlom. Ezt hogyan használom, hogy letöltse a szükséges dependenciákat?
Illetve kézzel kell letöltenem ezeket (megadva parancssorban) vagy van valami fájl, amiben felsorolhatom neki a projecten belül?
Egyelőre nem használok FW-öt csak próbálgatnám.pl: Ezt szeretném működésre bírni [link]
[ Szerkesztve ]
-
pelyib
tag
válasz #68216320 #19993 üzenetére
cli-ben:
belepsz a project konvytarabaphp /eleresi/ut/composer.phar init
Initcializalod a projectet, ertelemszeruen valaszolsz, ezzel letrejon a composer.json file.
Bovebbenmajd
php /eleresi/ut/composer.phar require clegginabox/pdf-merger:dev-master
BovebbenEkkor mar van a project konyvtarban egy ./vendor konyvtar, abban pedig egy autoload.php
Ennek az fajlnak a betoltese kell kb az elso lepesnek lennie az alkalmazasodban.
BovebbenOrom, boldogsag. Ha nem akarsz rogton a projectedben jatszani, akkor letrehozol egy ures foldert, es ott ugyan ezeket megteszed, es figyeled az eredemenyt.
[ Szerkesztve ]
-
btz
addikt
Készítettem egy PHP alapú alkalmazást, amivel IP kamerák által FTP-n feltöltött képeket lehet kilistázni generált, User/Password védett weboldalon.
Keresgéltem a neten olyan PHP script után, amit feltölthetek webtárhelyre és az IP kamerák statikus JPG formátumban feltöltött képeit egy generált weboldalon kilistáztathatom és Felhasználónév / Jelszó birtokában megnézhetek, akár mobilon is, anélkül, hogy le kelljen azokat FTP-vel töltenem a szerverről.
Nem találtam egy normális scriptet sem, így nekiálltam szerény PHP tudásommal "összeeszkábálni" egyet. Tudom 90-es évekbeli design és spagetti PHP kód, de a funkcionalitását betölti úgy ahogy az nekem megfelelő.
Abban a reményben mutatom be nektek, hátha egy (vagy akár több) hozzáértőbb PHP fejlesztő forkolja és tovább fejleszti. Nekem is vannak még ötleteim a továbbfejlesztésre, de sok időm nincs rá, de azért szép lassan haladok vele. Viszont egy több fejlesztő által reszelt kód gyorsabban fejlődne.Installálás
A forráskód letölthető a GitHub-ról és a GitLab-ról.
Ez feltölthető tárhelyünkre, szerverünkre.
Hozzunk létre egy Mysql adatbázist szerverünkön és futtassuk le az /sql/install.sql fájhlban lévő parancsokat (Például Phpmyadminban)INSERT INTO `registered_users` (`id`, `user_name`, `display_name`, `password`, `email`, `opt_adm`) VALUES
(1, 'DefaultUser', 'User Orig Name', 'MD5 PASSW', 'your@mail.com', '1');Ezt a részt cseréljük a saját adatainkra, ezzel fogunk tudni belépni a dashboardra. (Saját név, Saját megjelenített név, MD5 jelszó, Emailcím). Azt opt_adm = 1 esetén admin lesz a felvett user, más esetén sima felhasználó.
INSERT INTO `registered_cameras` (`c_id`, `display_camname`, `cam_path`, `cam_owner`, `cam_secret`) VALUES
(1, 'DefaultCAM', '/DATAS/CMS/', 1, 12345678); -- Change to Your own camera datas, and add a random secret (Max 8 numbers) --Ennél a résznél felvehetjük az első kameránk képeinek elérési útját, ami a fent felvett user tulajdona lesz. Ne feledkezzünk meg egy szép random titkos 8 jegyű számot is adni a kamera elérési útnak.
A /class/DataSource.php-ben állítsuk be az adatbázisunk elérését! (HOST, DB USERNAME, DB PASSWORD, DB NAME).
Használat
Ha mindent jól csináltunk, beléphetünk az index.php-n keresztül a dashboardba, ahol jelenleg csak két menü elem van, a CAMLIST, adminoknak pedig az USERLIST (de ez a rész még nincs teljesen kész, egy tömböt listáz ki a rendszerben lévő felhasználók adataival)
Itt adhatunk hozzá kamera elérési útvonalat (8 jegyű camera secret is létrejön egy random generálással!), ami beíródik az adatbázisba, illetve törölni elérési útvonalat, ami törlésre kerül az adatbázisból.
Ez a rész majd a későbbiekben szépítve lesz, jelenleg csak egy table elrendezésre futotta.
A view gombra kattintással nyílik meg a reader, ami kilistázza a legfrissebb 200 képet, illetve lapozható, így megjeleníthető az összes kép. Ezt is majd szeretném userhez kötötten megcsinálni. Azaz az user megadhatja mennyi képet szeretne látni , de nem ajánlatos 10000 kép/oldal-t csinálni (megöli a böngészőt).
Lehetőség van a dátum szerinti rendezés megfordítására már a camlist.php-ben is, amit a GET lekövet minden lapon azaz a régebbi képek lesznek az első lapon, a többin az újak. Ezt is adatbázisba írhatóvá akarom tenni, így megmarad a beállítás a felhasználónak. Jelenleg csak addig marad meg, amíg a GET le tudja követni az URL-ben ezt a beállítást.A camreader.php listázza ki az adott elérési úton található képfájlokat GET-el felparaméterezve. Mutatja a rendezést, a kamera elérési utat. Mutatja hogy összesen hány kép van feltöltve a mappába és hogy hányadik lapon állunk. A képek alatt megjelenik a fájl neve és a képfájl dátuma, így könnyen beazonosítható, hogy mikor készült a kép.
A képre történő kattintás után megnyílik a kép egy úgynevezett modal slider-ben, ami automatikusan pörög jelenleg, azaz átugrik az újabb képekre (Ez majd módosítva lesz a következő verziókban és csak gombnyomásra fog elindulni az automatikus képcsere. De azt sem bánnám ha egy forkban valaki megcsinálná és nekem már csak be kéne húznom a saját verziómba )
Nem általam készített, felhasznált beépített projektek
PHPPOT beléptető rendszer. (Működését elemeztem ebben a blogban)
Modal lightbox and sliderMit szeretnék még belerakni, javítandó dolgok
- Admin általi felhasználó kezelés, hozzáadás és törlés, szerkesztés
- START / STOP gombok a modalhoz (Esetleg plusz billentyűparancs)
- Kamera útvonal törlése előtti biztonsági értesítés (megerősítés)
- Kamera adatok frissíthetősége törlés és újbóli felvétel helyett
- Szebb kamera lista (a táblázat helyett)
- A kameralistánál már a camlist oldalon látható legyen, hogy mennyi képfájlt tartalmaz a mappa.
- MP4 videó lejátszása, videólista kezelése
- Adatbázisban rögzített rendezési beállítás
- Adatbázisban rögzített egyéb felhasználói opciókVárom az ötleteket és a forkokat
Várom mindenkinek a további fejlesztési ötleteit. A forráskód forkolását és saját ötleteid alapján történő további fejlesztését, vagy akár teljesen új alapokról történő kód újraírást (PHP-ben pro szeméylektől)
A fejlesztés menete a Githubos commitok által követhető nyomon, főleg itt teszem közzé, hogy mit miért változtatok a kódon.
Én ugyan IP kamera képeinek nézegetésre használom ezt a rendszert, de elképzelhető, hogy más képekkel való munkára is fel lehet használni. Erre is várom az ötleteket.Köszönöm ha elolvastad!
ⓑⓣⓩ
-
jattila48
aktív tag
Sziasztok!
Abszolút kezdő vagyok PHP-ban, és nem is szándékozom magam továbbképezni. Mindössze annyi történt, hogy írtam egy C programot, ami int értéket ad vissza. Ezt a programot exec-cel meghívtam egy PHP szkriptből (Linux rendszerről van szó), aminek a visszatérési értékétől függően folyt a további PHP feldolgozás. Ha a program 256-ot adott vissza, azt a PHP olybá vette, mintha 0-t kapott volna. Olyan, mintha karaktert adnék vissza, ami túlcsordul. Persze nem ezt akartam. Mi lehet a hiba oka? Fiam szerint az lehet, hogy a PHP exec a bash-on keresztül hívja a programot, a bash pedig csak karakternyi egész értéket tud visszaadni. Ez elég meggyőzőnek hangzik, azonban a PHP dokumentációjában erről nincs szó. A Windows esetében írja, hogy a cmd-n keresztül hívja a programot, de a Linuxról nem ír ilyet. Egyébként WAMP-on úgy működik, ahogy vártam.
„Kétségtelen, hogy nem tudjuk, mit tegyünk, de felkészültek és elszántak vagyunk.” - Olaf Scholz német kancellár
-
#68216320
törölt tag
válasz jattila48 #19998 üzenetére
Nem vagyok járatos a témában, de esetleg shell_exec() -el tehetsz egy próbát.
Új hozzászólás Aktív témák
- Nvidia GPU-k jövője - amit tudni vélünk
- Ukrajnai háború
- Kerékpárosok, bringások ide!
- Hardcore café
- Call of Duty: Black Ops 6
- A laposföld elmebaj: Vissza a jövőbe!
- Horgász topik
- Elektromos autók - motorok
- Lesifotón és renderképen a Huawei Mate 70 Pro
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- További aktív témák...
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest