- Hamarosan megkezdődik a nubia 2,8K-s táblagépének szállítása
- Barátokká váltak az eddig rivális AI-óriások
- ASUS blog: Ideális olcsó utazós gép lett az új Vivobook S14
- Az Aura Displays hordozható monitorhármasa jól felturbózhatja a produktivitást
- Dual Mode-os IPS monitorral adott magáról életjelet a Gigabyte
Új hozzászólás Aktív témák
-
venic
kezdő
válasz
bandi0000 #20027 üzenetére
Nem biztos, hogy választ tudok adni a kérdésedre
De mondjuk nem a beirt adatokból számolok, hanem a beirt info alapján még az adatbázisban vannak az adatok, ahonnan veszem a számokat amivel számolok.
Amit belinkeltem oldalt (kaloriabazis.hu), ha azt vesszük példának, akkor pl beirod hogy almát ettél, és akkor az adatbázisban meg kell nézni, annak mennyi a szénhidrát fehérje stb tartalma és akkor azzal kell számolni.
Illetve egy étel adatfelvételekor 3, tehát 1 küldés során 3 érték megy az adatbázisba, nemcsak 1.
Persze létrehozhatnék változókat a beirt adatoknak (vagy nem tudom, hogy gondolod), csak jelenleg nekem az most bonyolultabbnak tűnik. -
venic
kezdő
válasz
bandi0000 #20023 üzenetére
Úgy szeretném, hogy beir valamit a felhasználó és akkor már ezzel is történik számolás, majd ha megint hozzáir valamit, akkor módosul a számolás... szóval közben is van számolás, minden egyes adat beirás után, nemcsak a végén.
Szóval most úgy van felépitve, hogy beirsz valamit, akkor az adat megy az adatbázisba, majd a szükséges adatokból számol. Ha újra beirsz valamit, akkor az megint megy az adatbázisba, de számolásnál már a korábbi és a mostani beirt adatot is figyelembe véve történik a számolás. -
venic
kezdő
válasz
bandi0000 #20018 üzenetére
Mutatok egy példát, ehhez hasonlót szeretnék, talán igy jobban érthető lesz.
Ezen az oldalon is lehet regisztráció nélkül is beirni, hogy miket ettél egy nap.
És ha beirod az ételeket, utána kijön egy táblázat, ahol összegzi.
Csak ugye ez a gondom, hogy mig beir a felhasználó 2 adatot, közben beirhat egy másik felhasználó egy másikat.
Nekem is ilyesmi, hogy több adatot lehetne beirni és később ezekből számol, ahogy itt is végülis.
https://kaloriabazis.hu/ -
-
bandi0000
nagyúr
válasz
bandi0000 #19934 üzenetére
Na végül is ezt megoldottam, viszont
404 Page-et is létre szeretnék hozni, viszont itt elég korlátozottak a lehetőségek, a gond az, hogy ha betöltött egy oldal, és után olyan url-t adok meg, ami nem létezik, akkor ki tudok íratni egy szöveget, hogy 404, de az előző oldal megmarad
1.0-ás verziónak azt találtam ki, hogy minden oldal betöltés elött betöltök egy üres php fájlt, és értelemszerűen, ha jó az útvonal, akkor betölti hozzá a a felületet, ha nem, akkor megjelenik a 404 hiba, de ez elég puritán megoldás, erre van valakinek szebb megoldása?
Van egy Route osztály, amibe belekerülnek az útvonalak
class Route{
public static $validRoutes = array();
public static function set($route,$function){
self::$validRoutes[] = $route;
if(array_search($_GET['url'],self::$validRoutes)){
if($_GET['url'] == $route) {
$function->__invoke();
}
}else{
include_once("./Views/404.php");
}
}}
Az útvonalakat így adtam meg, A CreateView megkapja paraméternek a betöltendő View nevét
Route::set('home', function(){
Index::CreateView('deletePage');
Index::CreateView('Home');
});
-
kezdosql
tag
válasz
bandi0000 #19682 üzenetére
Ugy tunik, nem ertjuk egymast.:-(
Megvan az adatbazis, csinalok egy lekerdezesi formot, beteszem html fajlba.
Bongeszovel megnyitod a fajlt, elinditasz egy lekerdezest.Hogyan kell megcsinalnom, hogy a kapott eredmenyt html fajlban kapd, es azokra a tetelek, amikre engedelyezek tovabbi lekerdezest,linkkent jelenjenek meg, hogy ne kelljen ujra a formba beirnod a lekerdezest, cask rakattintasz a linker, es latod az eredmenyt?
-
pelyib
tag
válasz
bandi0000 #19654 üzenetére
A linkelt lib-nek a logger csak opcionális paramétere, szóval ha nem kell, akkor ne add át neki.
-
pelyib
tag
válasz
bandi0000 #19630 üzenetére
Nem hiányzik ott egy "/" a models után?
Amúgy az összes kódot (konfiguració ugye másik mappa) illik a "/src" mappába rakni így egy namespaceben van minden kódod
Teszteket csak deven kellenek behúzni.
Pl ahogy az a Composer doksijában is van. -
Doink
aktív tag
válasz
bandi0000 #19608 üzenetére
Vagy mindenhol validálsz vagy csak szerveren.
Ha csak szerveren akkor visszakapsz egy JSON-t az errorokkal és azt értelem szerűen angularral rábindolod a megfelelő mezőkre.
Ha mind2 oldalon akkor addig nem küldesz semmit amíg böngészőből el tudod dönteni valamiről hogy valid, de ettől függetlenül szerver oldalon mindig validálunk hiszen a böngészővel a user azt csinál amit akar.A kliens és a szerver között megváltozik az adat:
- Ha arra gondolsz hogy valami csomag elkúródik akkor ezzel nincs dolgod, tcp/ip megoldja
- Ha arra gondolsz hogy felviszel egy új admin usert de valaki már felvitt egyet amíg te töltötted ki a formot akkor a szerveroldali validálás meg fogja oldalni.
- Ha arra gondolsz hogy egyszerre többen szerkesztik ugyan annak a usernek a formját akkor azt úgy tudod megoldani hogy beteszel egy timestampet vagy random karaktersort minden editálásnál és leküldöd a kliensnek, ha nem ugyan azt küldi vissza mint ami a db-ben van akkor valaki már megváltoztatta amíg ő szerkesztette az adatot
- Ha arra gondolsz hogy egy táblázatot/bármilyen kiírást hogyan lehet frissíteni real time ahogy a szerveren változik akkor WebSocket -
pelyib
tag
válasz
bandi0000 #19601 üzenetére
Általában elé raknak egy dedikált webszervert (Nginx, Apache) ami bizonyos szabályok alapján eldönti, hogy pontosan hogyan szolgálja ki a kérést, esetünkben továbbítja a PHP felé.
Ennek beállítására ~ végtelen leírás van a neten, többek között a Slim oldalán is. -
pelyib
tag
válasz
bandi0000 #19599 üzenetére
Az átadott osztálynak implementálni kell a JsonSerializable interface-t.
-
DNReNTi
őstag
válasz
bandi0000 #19594 üzenetére
Ha nem hoki backendet akarsz irni, akkor a PHP-t kb el is felejtheted. Nem megoldhatatlan feladat benne REST API-t irni, csak szerintem tulzottan hakolas, meg akkor is ha valami normalis framework-ot hasznalsz, ilyen lehet pl a Lumen vagy a Slim. Szerintem kimondottan API-t irni, sokkal egyszerubb mondjuk NodeJS-ben. Lehet velem van a baj, es csak az en kezem nem allt ra, de en az utobbi par evben a modern igenyek miatt inkabb mar elengedtem a PHP-t.
-
bandi0000
nagyúr
válasz
bandi0000 #19593 üzenetére
UPDATE
közben látom, hogy nem json formátum, legalább is egy validátor szerint
végül is az lett a megoldás, hogy az osztályban van egy metódus, ami json formátumban adja vissza az adattagokat, és ezt tudom vissza küldeni a $response-ba
ez mennyire számít jó megoldásnak? mármint ha nem hoki backendet akarok csinálni?
-
pelyib
tag
válasz
bandi0000 #19586 üzenetére
Az attól függ, hogy mit akarsz validalni.
Ha a request-t, akkor én a fentebb levő middleware-s megoldást mondanám, azzal az invalid request el se jut a controllerig. De akár saját magad megírt egyszerű class is jó ami csak a Respect\Validation libet használja.
Szóval igen, külön osztály, akár minden endpointhoz egyet-egyet.Ha meg csak a paraméterét egy metodusnak, akkor meg simán ott helyben: Respect\Validation.
És igen szivás meg idő mindent levalidalni, de utána nyugodtabban alszik az ember.
-
válasz
bandi0000 #19559 üzenetére
én már mindenhogy próbáltam
És én minden esetre köszönöm az ötletelés, okoskodásnak biztos nem veszem, mert én mát ötlettelen vagyok
Jelenleg úgy gondolom hogy a cikluson belüli változó kezeléssel lesz a bajom, mert ha:<?php
while($rows=mysqli_fetch_assoc($result)) {
echo $rows['ID'];
?>
<tr>
<td align="center" bgcolor="#FFFFFF"><input name="checkbox[]" type="checkbox" id="checkbox[]" value="<? echo $rows['ID']; ?>"></td>
<td bgcolor="#FFFFFF"><? echo $rows['ID']; ?></td>
<td bgcolor="#FFFFFF"><? echo $rows['Comment']; ?></td>
</tr>akkor az eredményem:
-
bandi0000
nagyúr
válasz
bandi0000 #19532 üzenetére
Esetleg annyi, hogy írja, hogy változtassam meg az elérési utat, az elején látok csak ilyet, de ha jól tudom, ott az autoload.php elérési útját kell megadni, viszont ha rá navigálok a tickets-re, akkor azt írja, hogy nem találja annak az osztálynak az elérési útját, mert rossz helyen keresi
Új hozzászólás Aktív témák
Hirdetés
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Vicces képek
- One otthoni szolgáltatások (TV, internet, telefon)
- Milyen billentyűzetet vegyek?
- SD-kártyát vennél? Ezért ne csak a GB-ot nézd! – Tech Percek #9
- A fociról könnyedén, egy baráti társaságban
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Macron betiltatná az EU-ban a közösségi médiát a 15 év alattiaknak
- További aktív témák...
- Apple Ipad 10.generáció
- Új HP Pavilion x360 14-ek Érintős hajtogatós Laptop Tab 14" -35% i5-1335U 8/512 FHD IPS Iris Xe
- RTX 4080 SUPER,16GB. Ryzen 7 7800X3D, 32 RAM Fury RGB! Garancia!
- Asztali PC , i7 9700K , RX 5700 XT , 32GB DDR4 , 500GB NVME , 1TB HDD
- Dell Inspiron 5406 2-in-1i5-1135G7 16GB DDR4 3200 512GB NVME 14" FHD Érintőkijelző W11Pro
- BESZÁMÍTÁS! ASUS B460M i7 10700 16GB DDR4 512GB SSD GTX 1080Ti 11GB KOLINK Observatory TG TT 600W
- 100.000 ft -tól Országosan a legjobb BANKMENTES részletfizetési konstrukció! ASUS ROG Strix G18
- Apple iPhone SE 2020 64GB Kártyafüggetlen 1Év Garanciával
- LG 55G4 - 55" OLED evo - 4K 144Hz & 0.1ms - MLA Plus - 3000 Nits - NVIDIA G-Sync - FreeSync Premium
- Jogtiszta Microsoft Windows / Office / Stb.
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest