- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Samsung Galaxy S23 Ultra - non plus ultra
- Google Pixel topik
- Garmin Instinct – küldetés teljesítve
- Bemutatkozott a Poco X7 és X7 Pro
- Yettel topik
- Magyarított Android alkalmazások
- Hónap végén érkezik a Xiaomi Band 10, ára is van
- iPhone topik
- Nothing Phone (3a) és (3a) Pro - az ügyes meg sasszemű
Ú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
- Autós topik látogatók beszélgetős, offolós topikja
- Azonnali alaplapos kérdések órája
- Spórolós topik
- Elemlámpa, zseblámpa
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Hisense LCD és LED TV-k
- Villanyszerelés
- Kecskemét és környéke adok-veszek-beszélgetek
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- További aktív témák...
- AKCIÓ! MSI B365M i5 8600 16GB DDR4 512GB SSD RX 5700XT 8GB CM MASTERBOX Q300L Zalman 600W
- DUPLA XEON GOLD 6134!!! HP Z8 G4 LEGNAGYOBB WORKSTATION 64GB 2x8 mag 2x16 szál gamer, szerver, munka
- Beszámítás! Oculus Rift virtuális valóság szemüveg garanciával hibátlan működéssel
- 2db Dell PowerEdge R740 2U Rack Szerver és 3db Netapp FAS2040 NAS
- 1-12 részletre.Új noblechairs EPIC műbőr FEKETE - FEKETE. 2 év garancia!
Állásajánlatok
Cég: Liszt Ferenc Zeneművészeti Egyetem
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest