Hirdetés
Köszönjük a sok biztatást, támogatást! Utolsó pillanat a féláras hirdetésfeladásra, előfizetésre!
Új hozzászólás Aktív témák
-
válasz
MineFox54 #17725 üzenetére
' (quote) - string
` (back quote) - field specifiertav előtt van, utána nincs
UPDATE reg SET `tav'='$tav', 'gender'='$gender', 'birthday'='$birthday', 'name'='$name', 'email'='$email', 'varos'='$varos', 'utca'='$utca', 'focinev'='$focinev', 'telefonszam'='$telefon', 'szamla'='$szamla', 'egyesulet'='$egyesulet' WHERE email='$email'
minegyik elé és utána kellene, vagy sehova se, ha nem használt foglalt nevet mezőnévhez
UPDATE reg SET `tav`='$tav', `gender`='$gender', `birthday`='$birthday', `name`='$name', `email`='$email', `varos`='$varos', `utca`='$utca', `focinev`='$focinev', `telefonszam`='$telefon', `szamla`='$szamla', `egyesulet`='$egyesulet' WHERE `email`='$email'BTW az angol és magyar mezőnevek keverése nagyon tré
Ja és remélem ellenőrzöd az inputokat! -
Sk8erPeter
nagyúr
válasz
MineFox54 #17627 üzenetére
1. Nem konkatenálunk SQL-utasítást escape-eletlen inputtal, SOHA, semmilyen körülmények között (azt sem érdemes felhozni mentségnek, hogy de hát az szerintem megbízható adat, mert nincs olyan kívülről érkező adat, amit megbízhatónak érdemes tekinteni - ez a paranoiás szemlélet célravezetőbb), és amennyiben lehetséges, prepared statementeket KELL használni a különböző paraméterekre. És jelenleg lehetséges, mivel MySQLi-t használsz, szóval mindenképp állj át arra.
2. Az ilyen jellegű mezőkhöz aliasokat illik használni (pl. itt SUM(tav) AS distance vagy hasonló), aztán az aliasnak megfelelően hivatkozni rájuk (pl. itt $row['distance'] - szándékosan nem használtam magyar változónevet).
A konkrét érdekes eltéréshez nehéz többet hozzátenni, több infót kellene tudni, mi változhat a különböző futtatások között.
-
fordfairlane
veterán
válasz
MineFox54 #17611 üzenetére
tehát az 54*60+21 az enm megy
az csak egy példa volt. Ne értsd már félre mindent, amit csak félre lehet érteni. Még a komment is ott van mögötte, hogy "sec". Szekundum. Másodperc. Az $ido nevű változóba kerül az idő, másodpercben. Az a példa szempontjából mindegy, hogy honnan, mysql-ből vagy máshogyan.
-
fordfairlane
veterán
válasz
MineFox54 #17608 üzenetére
Az előző példában benne van a másodperc kiiratása is. Egyetlen hibája van, hogy az órát nem alakítja perccé, tehát ha a tempó annyira lassú, hogy egy óra feletti, akkor hibás a kiíratás. Ez már jó lesz:
<?php
$tav = 10.33; // km
$ido = 54 * 60 + 21; // sec
$tempo = $ido / $tav;
$min = floor($tempo / 60);
$sec = $tempo % 60;
printf("%02s:%02s", $min, $sec);Echo-ba ne rakj mindenféle varázsképletet, könnyű belekavarodni. Érdemes szétválasztani a számolást a megjelenítéstől.
-
don_peter
senior tag
válasz
MineFox54 #17599 üzenetére
Szerintem pontosan úgy ahogyan azt előzőleg leírtam.
A megtett távot osztja idővel és ennek eredménye a sebesség.Egyébként ez a program is maximum 2 adatból számol: futás hossza, gondolom méterben vagy tizedessel elválasztva km-ben és futás időtartama leosztva másodpercre.
A többi adatot csak menti az adatbázisba, mint + információ, ha vissza akarod naplózni. -
don_peter
senior tag
válasz
MineFox54 #17596 üzenetére
A távolságot kell osztani idővel, akkor megkapod az időt levetítve a távolságra.
Tehát, ha 1200m-ert tettél meg 60mp-alatt, akkor az 20m/s sebességet jelent.
Ha az átlagot akarod folyamatosan mérni, akkor mintákat kell vegyél időközönként és azokat letárolva és átlagolni.
Ez utóbbi akkor működhet, ha élő kapcsolatban akarod mérni a sebességet.
Minden másra az első a nyerő... -
cidalain
veterán
válasz
MineFox54 #17497 üzenetére
ilyenre gondolsz:
https://www.google.hu/maps/dir/Szent+István+út+23,+Győr,+9021/Petőfi+Sándor+sugárút+3,+Szegedehhez nem kell ész mostanában. összecseszed a linket valami űrlap alapján, és rázúdítod a google maps-ra.. 98%-ban jól működik. (a maradék 2% térképhiba, pl ha x városban van Kölcsey Ferenc utca, mellette 5-10 km-re megy Y városban is van, de ott csak Kölcsey néven van a térképen, és te X város Kölcsey utcát keresed akkor az utca szoros egyezése miatt Y város Kölcsey utcára fog vinni.)
kellett nekem litániát írni, megelőztek
-
Sk8erPeter
nagyúr
-
Sk8erPeter
nagyúr
válasz
MineFox54 #17497 üzenetére
Ennek mi köze a PHP-hez? Legalábbis az itt írt további hsz.-ed alapján bőven elég beágyazni az útvonalat, aztán annyi.
Ha viszont valahogy dinamikusan szeretnéd megtervezni az útvonalat, nem egy konkrét, rögzített útvonalat akarsz megjeleníteni, akkor tedd fel értelmesebben a kérdésedet.(#17495) biker:
És a Macesek nagy sztárolt IDE-jében (már ha az, nem csak egy szerkesztő, fogalmam sincs a Mac-cuccokról, nem is nagyon izgatnak) nem lehet PHP-kódot debuggolni? -
Sk8erPeter
nagyúr
válasz
MineFox54 #17424 üzenetére
Ezt elkerülheted egy normális fejlesztőkörnyezet használatával - de ilyet akár egy szintaktika-kiemelős szövegszerkesztő is egyértelműen mutat, mint pl. a Notepad++ -, meg azzal, hogy bekapcsolod a hibajelzést fejlesztés idejéig... (pl. ezért parse errort kellett volna, hogy kapj fehér képernyő helyett, a fehér képernyő fejlesztés idején ugyebár nem túl beszédes)
-
fordfairlane
veterán
válasz
MineFox54 #17354 üzenetére
Igen, használj PDO-t. Azt a mysqli példát felejtsd el, úgy rossz, ahogy van. Prepared statementeket érdemes használni.
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
$sql = "UPDATE MyGuests SET lastname = :lastname WHERE id = :id";
$stmt = $conn->prepare($sql);
$stmt->execute(array(
":id" => 2,
":lastname" => "Doe"
));
// echo a message to say the UPDATE succeeded
echo $stmt->rowCount() . " records UPDATED successfully";
} catch(PDOException $e) {
echo $sql . "<br>" . $e->getMessage();
} -
-
válasz
MineFox54 #17348 üzenetére
Arra viszont számíts, hogy nem szükségszerűen lesznek ezek az ID-k szép egymás utánban (hosszabb használkat után). Rekordok törlése után ugyanis az adott ID-t többet már nem osztja ki a rendszer - nem rendezi újra a táblát, hogy törlés után is szép sorban legyenek az ID-k.
-
Új hozzászólás Aktív témák
- RTX 3060 TI játék csúnyaságok (Stalker 2, Manor Lords)
- E-roller topik
- Otthoni hálózat és internet megosztás
- Vivo X200 Pro - a kétszázát!
- Debrecen és környéke adok-veszek-beszélgetek
- Fizetős szoftverek ingyen vagy kedvezményesen
- Reklámblokkolók topikja
- Windows 11
- Garmin Instinct – küldetés teljesítve
- Fejhallgató erősítő és DAC topik
- További aktív témák...
- Gigabyte GA-F2A88XM-D3HP Alaplap + AMD A10-7800 Radeon R7 + 2x4GB ADATA DDR3 RAM
- iPhone14 Pro Max Független , dobozában , Alza Garancia
- Eladó 2tb szerver hdd több db
- OUTLET Áron - Steelseries, Razer, Logitech, Corsair - Számlával, Garanciával, Mélyen ár alatt!
- Samsung Galaxy S25 Ultra, 12/512, ezüstkék titán
- Samsung Galaxy Book2 NP750XED i7-1255U 16GB 512GB GARANCIA: 1 ÉV
- Akció! Paidashu 10600MAH / 20700MAH Powerbank olcsón!
- Telefon felvásárlás!! iPhone 12 Mini/iPhone 12/iPhone 12 Pro/iPhone 12 Pro Max
- 134 - Lenovo Legion Pro 7 (16IRX8H) - Intel Core i9-13900HX, RTX 4090 - 3 év garancia
- Új, Garanciális (1-3ÉV) Gamer PC-Számítógép, néve szóló számlával! I5 14400F / RTX 5060 / 32GB DDR5
Állásajánlatok
Cég: FOTC
Város: Budapest