- Apple iPhone 16 Pro - rutinvizsga
- One mobilszolgáltatások
- Android alkalmazások - szoftver kibeszélő topik
- További kavarás a Pixel 10-ek körül
- India felől közelít egy 7550 mAh-s Redmi
- Honor 200 Pro - mobilportré
- Motorola Edge 40 - jó bőr
- Magisk
- Okosóra és okoskiegészítő topik
- Samsung Galaxy S20 FE - tényleg nem lite
Új hozzászólás Aktív témák
-
Soak
veterán
Akkor valami ilyesmivel kéne
SELECT cikkszam FROM mozgastetel WHERE cikkszám IN ( szerk: Persze hogy nem a létezőket írod ide, hanem azokat amiket épp be akarnak írni, bocs ) ,ha ez ad vissza valamit akkor tudod hogy már létezik és ki is tudod iratni a hibakezelőddel mivel visszadja a létezőket .
-
Soak
veterán
Ha jól értem amire gondolsz akkor http://php.net/manual/en/function.array-unique.php , ez kiszedi a dupla cikkszámot, de szó nélkül . Érdemes elolvasni a doksiját is, hogy mit tekint egyenlőnek.
Ezt miért csinálod :
$lek="SELECT * FROM eszkoztorzs";
$eredmeny = mysql_query($lek) or die ("HIBA!");?
-
CSorBA
őstag
Logikus, a die azért van benne, ha nem sikerül, akkor "haljon meg/lépjen ki" és ne csináljon semmit. Ha ezt kiszeded, akkor nem lép ki, de nem is tud mit csinálni, mert már előtte van valami hiba
mondtam már, hogy ne csak táblázatba rakd, hanem vmi inputba is:
írd át azt a sort erre:
<td><?php echo "<input type=\"hidden\" name=\"mozgastetel\" value=\"" . $sor['mozgastetel_id'] . "\"/><a href=\"inc/teteltorles.php?id=" . $sor['mozgastetel_id'] . "\">Törlés</a>";?></td>
De ebbe a ronda kódba már kezdek belezavarodni, szóval inkább erre:
<td><input type="hidden" name="mozgastetel" value="<?=$sor['mozgastetel_id']?>" /><a href="inc/teteltorles.php?id=<?=$sor['mozgastetel_id']?>">Törlés</a></td>
-
Lacces
őstag
Tipp, nálam bevált az elején:
Amikor bármilyen lekérdezéset csináltam, akkor először a phpmyadmin-ban csináltam meg, ott mindig rinyált a mysql ha valami nem volt jó... és ha jó volt a kód, akkor szimplán csak kimásoltam, aztán meg csak kiegészítettem a php kódokkal.
Aztán a végén már hozzászoksz és ebből nem lesz baj. Meg így fel lehet fogni, hogy mit miért ír ki...Másik, én nem tudom, hogy a többiek hogy vannak vele, de inkább használnék mysqli-t vagy pdo-t. Ha jól láttam anno, ezt a sima mysql-es dolgot a php.net sem ajánlja. Link itt.
-
Soak
veterán
Direkt írtam neked az előbb, hogy a prepared statementeket használj (mondjuk nem reagáltál rá semmit
) , mert így még mindig elfogod felejteni escapelni a dolgokat, plusz ha kezdő vagy akkor legalább a jó módszert tanulod meg és nem kell 2 hónap mulva átállni/átírni mindent .
-
Sk8erPeter
nagyúr
Nem ártana, ha a webraktar egy string lenne.
Egyébként hogy elkerüld a parákat, még ezt is javítsd:
mysql_query("DELETE FROM mozgastetel WHERE mozgastetel_id=" . mysql_real_escape_string($_GET['id'])) or die(mysql_error());
erre
mysql_query("DELETE FROM mozgastetel WHERE mozgastetel_id='" . mysql_real_escape_string($_GET['id'])."'") or die(mysql_error());
Gyakorlati példa:
ha a $_GET['id'] egyenlő ezzel: asdasd
DELETE FROM mozgastetel WHERE mozgastetel_id=asdasd
helyett ez lesz:
DELETE FROM mozgastetel WHERE mozgastetel_id='asdasd'Így meg nem fog legalább szintaktikai para miatt sírni a MySQL.
Ahogy a többiek mondták, szokj rá még időben a PDO-ra. (Mármint minimumként, aztán jöhet egy ORM később.)
Szerk:
most látom, Lacces is így escape-elte.
A magyarázat meg itt van, hogy miért jó így. -
Lacces
őstag
mysql_query ("DELETE FROM mozgastetel WHERE mozgastetel_id=". mysql_real_escape_string($_GET['id'])) or die (mysql_error());
én ilyesmivel próbálkoznék: mysql_query("DELETE FROM `mozgastetel` WHERE `mozgastetel_id`='".$_GET['id']."' ");
Csak így szimplán. használva a ` és ' jeleket. Így talán nem zavarodik bele a mysql sem, lehet phpmyadmin-ban is tesztelni kellene a query-t amit írsz hogy ott működik-e...Ennyit tudok segíteni.
-
Lacces
őstag
Szia, Nem tudom, hogy mit használsz (de ha jól láttam mysqli) PDO vagy Mysqli, de írd be azt a keresőbe amit használsz, és egy 'example' szót melléje és nézd meg őket, hátha az úgy jobban segít.
De itt a csatlakozással van a gond. Tudsz az adatbázishoz kapcsolódni (terminál, vagy a Windows parancssoron) keresztül?
De gondolom igen.
-
Speeedfire
félisten
Nem tudom milyen programot használsz kódolásra, de valami ide-t felrakhatnál pl netbens. Írja is a gondot.
2 hiba is van:
1. A sztingbe akarod fűzni a php value-t.
2. Nincs eszképelve a get id. Ez így egy elég nagy hiba sql részen.Így valamivel jobb:
<?php
include("inc/connect.php");
mysql_query ("DELETE FROM mozgastetel WHERE mozgastetel_id=". mysql_real_escape_string($_GET['id'])) or die (mysql_error());
?>pl a biztonság is elég érdekes itt, legalább nézd meg, hogy belépett felhasználó-e, meg egy jogkör sem lenne rossz.
-
Soak
veterán
Nem tudom, hogy milyen suliba diploma munka, de ha nem csak az számít, hogy meg legyen akkor esetleg az SQL Injection + Prepared Statement és/vagy Escape-t átnézhetnéd . A kódod abszolut nem biztonságos, itt még el megy, de ha később ezzel akarsz foglalkozni akkor ez életképtelen.
Szerk: Ha pedig kódot szursz be akkor használhatnád a Programkód formázási lehetőséget.
Más : Nem kéne írni egy peticíót, hogy Parciék rakjanak be egy alap syntax highlightert ? Sokat segítene a használhatóságon
.
-
PazsitZ
addikt
Ne vedd támadásnak, de érdemes lenne átfutnod egy alap HTML tutorialt.
[link] a name attributumot be kell állítani az input tagnek, hogy megkapd mint post-olt adatot. Esetedben ha jól látom mozgastetel_id kell, hogy a name attributum legyen.
<input type="hidden" value="<?php=$sor['mozgastetel_id']?>" name="mozgastetel_id">De jelen esetben ha listát használsz az azonos input nevek nem fognak működni.
A listád esetében inkább egy törlés linket tudnék elképzelni, ami a legegyszerűbb megoldás lehet. Ekkor viszont GET-el kaphatod meg az id-t. -
Sk8erPeter
nagyúr
Csatlakoztál egyáltalán az adatbázishoz előtte?
Egyébként az egyértelműség érdekében javítsd mysql_fetch_assoc()-ra, ÉS stringszerűen használd, ne úgy, ahogy most csinálod:
echo $row[szallitonev];
HELYETT
echo $row['szallitonev']; -
Lacces
őstag
Valami ilyemsi lekérdezés kell neked:
SELECT sz.szallitonev, t.telephelynev, th.telephelynev, mt.cikkszam, j.jellegnev, m.datum
FROM mozgas_fej as m
LEFT JOIN szallito as sz ON sz.szallito_id=m.szallito_id
LEFT JOIN telephely as t ON t.telephely_id = m.honnan
LEFT JOIN telephely as th ON th.telephely_id = m.hova
LEFT JOIN mozgas_tetel as mt ON mt.bizonylatszam = m.bizonylatszam
LEFT JOIN jelleg as j ON j.jelleg_id = m.jelleg_idHa így nézz ki a táblád, frissítsd, én a honnan, hova mezőket átírnám: kezdohely, veghely vagy valami ehhez hasonló. Ha a lekérdezésben rövidítést szeretnék használni, akkor ott erősen bekavarhat. Plusz a külön tábláknál, mint a szallito, jelleg, stb. lehetne sima 'id' mezők is... Egy ennyire szétszedett adatbázis szerkezetnél felesleges
-
Soak
veterán
Ez inkább adatbázis kérdés, de van több megoldás is, az egyik az, ha listázod (gondolom foreachel probálkozol) akkor a $mozgas_fej->id; nem lesz kiírva vagy eleve úgy kéred le adatbázisból, hogy pl SELECT honnan,hova,szallito_id,jelleg_id,datum FROM mozgas_fej (ez MySQL kód).
Szerk: Most ujra elolvasva a kérdésedet rájöttem, hogy félreértettelek, akkor ezt egy JOIN-al kell megoldanod .
Új hozzászólás Aktív témák
Hirdetés
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- E-book olvasók
- Autós topik látogatók beszélgetős, offolós topikja
- Lalikiraly: SÜNI energiaital.
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- AliExpress tapasztalatok
- Milyen házat vegyek?
- Hobby elektronika
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Fujifilm X
- További aktív témák...
- IPAD AIR 13" M3 WIFI 256GB KÉK
- Nike Airmax 720 43-as sneaker eladó
- Latitude 5440 14" FHD IPS i7-1365U 16GB 512GB NVMe magyar vbill ujjlolv IR kam gar
- Lenovo S10-2 Intel Atom retró csajszis netbook eladó
- HP Elitebook 840 G6, 14" FULL HD IPS, I7-8665U CPU, 16GB DDR4, 256GB NVMe SSD, WIN 11, 1 év garancia
- Wilbur Smith könyvek (15 db) egyben
- Robbanj a jövőbe egy új Ryzen 7 5800X-szel! Kamatmentes rèszletre is!!
- Telefon felvásárlás!! Apple iPhone 16, Apple iPhone 16e, Apple iPhone 16 Plus, Apple iPhone 16 Pro
- Lenovo ThinkCentre M720s SFF / M920T tower -Számla, garancia, WIN11
- AKCIÓ! Lenovo Legion Slim 5 Gamer notebook - R7 7435HS 16GB RAM 1TB SSD RTX 4070 8GB GDDR6 WIN11
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged