Aktív témák
-
rt06
veterán
válasz
Jester01 #1769 üzenetére
eljutottam vegre odaig, hogy kiprobaljam es gyonyoruen mukodik
bar en megtartottam a parent mezot is a left es right melle, mert ugy nem szamottevo a tabla helyfoglalasa, cserebe sokkal egyszerubb a kozvetlen gyermekek lekerdezesemegegyszer koszonom, pont erre volt szuksegem
-
Briganti
tag
válasz
Jester01 #1195 üzenetére
hat ez nem akar menni, betettem siman csak kod szerint csokkeno sorrenbe rendezze, most ugytunik jo, de nemtudom milesz ha nagyobb szamok fognak bejonni ... azert beteszem a kodot, mert kivancsi lennek mi a megoldas ...
... es hogy miert nem raktam kulon cellakba? ... ense tudom, talan hogy gyujtsem a bajomat :(
if (isset($_GET['cod'])) {
$cod=$_GET['cod'];
$req=1;
}
if (isset($_GET['denumire'])) {
$denumire=$_GET['denumire'];
$req=2;
}
$result_str=''<table align=center border=1><tr><th>COD</th><th>Denumire</th><th>PU</th><th>Ban</th><th>Stoc</th></tr>'';
switch ($req) {
case 1 :
$sel=mysql_query(''SELECT * FROM materia WHERE cod LIKE '$cod%' ORDER BY cod DESC'');
while ($res=mysql_fetch_array($sel)) {
$cod=$res['cod'];
$denumire=$res['denumire'];
$pu=$res['pu'];
$buc=$res['buc'];
$money=$res['money'];
$cod_1=substr($cod,0,4);
$cod_2=substr($cod,4,4);
$cod_3=substr($cod,8,4);
$cod_4=substr($cod,12,4);
$result_str=$result_str .''<tr><td>$cod_1-$cod_2-$cod_3-$cod_4</td><td>$denumire</td><td>$pu</td><td>$money</td><td>$buc</td></tr>'';
}
break;
....
Es a Tablazat:
cod denumire pu money buc
0002000000010001 ESSO ULTRA 10W40 - 4LT 10.37 RON 0
0002000000020001 ESSO ULTRA 10W40 - 1LT 10.88 RON 0
0002000000030001 ESSO ULTRA UNIFLO DIESEL 15W40 - 1LT 8.7 RON 0
0001000000010001 MOBIL SYNT S 5W40 - 4LT 18.82 RON 0
0001000000020001 MOBIL SUPER S 10W40 - 4LT 13.18 RON 0
0001000000030001 MOBIL SUPER M 15W40 - 4LT 9.47 RON 0
0001000000040001 MOBIL SUPER M 15W40 - 1LT 10.11 RON 0
0002000000030002 ESSO ULTRA UNIFLO DIESEL 15W40 - 1LT 8.13 RON 0
es ha en a kodhoz beirom hogy: 00010000
akkor nekem a kodok sorrendje ugy kell legyen hogy:
0001000000040001
0001000000030001
0001000000020001
0001000000010001
....
most ez igy mukodik, de ugylenne az igazi hogyha nekem az a 4 szam szerint rendezne :) -
szicsu
őstag
válasz
Jester01 #1143 üzenetére
Aha
Mert olyan lekérdezést szeretnék csinálni, ai több táblában keres egy értéket, és az eredmény tömbből tudom, hogy az adot érték melyik táblából származik.
Én valami ilyesmire gondolok:
Select 'tabla1' as tabla, id_tabla1 as id from tabla1
union
select 'tabla2' as tabla, id_tabla2 as id from tabla2
ettől van egyszerűbb? -
VladimirR
nagyúr
válasz
Jester01 #1133 üzenetére
van egy tablam, amiben kulonfele elemek vannak
minden elemhez tartozik egy kategoria-azonosito, ami alajan szetvalogatom oket
es minden elemhez tartopzik egy ertek, ami alapjan rendezem oket
le tudom valahogyan kerdezni (egyszeruen, beagyazott select nelkul) az elso ot elemet kategoriankent?
vagy ehhez kategoriankent kell egy select?
szerk.: nem tudom, hogy ez miert valasz lett - mellekattintani egy dolog, de hogy csak az ok-ra bokes utan esett le, hogy ott volt a szovegdoboz felet egy masik post is....
[Szerkesztve] -
szicsu
őstag
-
Forest_roby
őstag
válasz
Jester01 #1084 üzenetére
Lehet, ha megnéztem volna a GROUP BY -t akkor ez most nem lenne kérdés, de...mindegy...
Meg lehet azt csinálni egy select -ben, hogy két különböző pl user_id v. login_név -et kérdezek le?
pl.:
ki hozta létre 'ezt'? reg_user_id -> loginName
ki használta utoljáta 'ezt'? -> last_user_id -> loginName
Ha a két kérdésre a select -tel tudok válaszolni, akkor két loginName -et kapok. Ez gondolom nem tul jó, mert akkor a hivatkozás se lehet egyszerű.
Biztos értitek a problémámat.
Mi erre a megoldás?
Előre is köszi!
Forest -
Forest_roby
őstag
válasz
Jester01 #1065 üzenetére
Köszi a segítséget! Neked is, mindenki másnak is aki hozzászólt az alap kérdésemhez,
Úgy értelmeztem magamban a dolgot, hogy jó ez a FK, de egy ideig még gond nélkül meg leszek nélküle - majd a motorban gondoskodok az adatok biztonságáról!
-------------------------------------------------
Jut eszembe. Ez az alap kérdésem kb 4ed rész! A többire dobok egy UP! ott. #1059
[Szerkesztve] -
tkazmer
addikt
válasz
Jester01 #1031 üzenetére
Hűha, ez nekem még majdnem hogy kínai, bár lehet, csak fáradt vagyok hozzá. Mindenesetre ott, ahol kipróbáltam, nem volt teljesen tökéletes, bár szerintem csak az lehet a baj, hogy vagy rossz helyre tettem be, vagy rossz változókat adtam neki. Mindenesetre köszönöm
#1027) Tyrael
Nem, úgy gondoltam, hogy ezután abbahagyom a webes fejlesztést, és még ezen a télen írok gyorsan egy vista konkurenst...
[Szerkesztve] -
tkazmer
addikt
válasz
Jester01 #945 üzenetére
Ismét próbálkoztam. A mysql_result-ra azt mondta, hogy neki nem jók azok a paraméterek, amiket kap.....végigpróbáltam a fetch-eket(asszem az összeset), de vagy nem ismeri a php-m, vagy nem jók, jó részük végtelen ciklust okozott. A legközelebb még így
$keres_szoveg = ''SELECT * FROM tabla'';
$keres = mysql_query($keres_szoveg);
$szam = mysql_num_rows($keres);
for($i = 5; $i < $szam; $i += 5)
{
print ''<option value=\''$osszkepszam -1\''>$szam'';
} ?>
jutottam a legközelebb a megoldáshoz, így az <option>-ban lévő sorok száma rendben volt, csak az értékük nem. -
Briganti
tag
válasz
Jester01 #931 üzenetére
nemtudom jo fele keresgeleke, az illeszkedo sorokkal gondolom arra gondoltal hogy a quote_dict. onaryba legyen olyan szo hogy ''Dictionary'', es igytovabb ... biztos hogy mindegyik tablaba van egy megfelelo sor, mert direkt onnan masoltam ki az ertekeket ...
tehat akkor valahogy ugy kene csinaljam hogy:
(1)SELECT * FROM quote_author, quote_dictionary, quote_dictionary_quotation, quote_quotation
(2)WHERE quote_quotation.quotation LIKE 'stood'
(3)AND quotes_quotation.attribution LIKE 'advertisement'
(4)AND quote_quotation.author_id = quote_author.author_id
(5)AND quote_author.author_name LIKE 'Otto'
(6)AND quote_quotation.quotation_id = quote_quotation_dictionary.quotation_id
(7)AND quote_quotation_dictionary.dictionary_id = quote_dictionary.dictionary_id
(8)AND quote_dictionary.dictionary_name LIKE 'Dictionary'
na bele gabalyodtam a sok tablazatba, s eszembe jutott egy kerdes amin eddig meg soha nem gondolkoztam ... szamite a sorrend az AND-knel? tehat vegyuk a 6-dik sort, ott 2 tablazaton kell vegig mennyek ... tehat megnezi hogy a quotation_id -nek meik dictionar_id felel meg, es ezt a sort kene ellenorizze tovabb abba a tablazatba amelyikbe elvannak tarolva a dictionary nevek ...
na ez egy kicsit bonyolult lett, de legalabb annyit hogy jo fele indultame el, vagy haggyam az egesszet es elolrol mindent :) -
woodpaul
őstag
válasz
Jester01 #850 üzenetére
Akkor szerinted hogy érdemes csinálni? Mondjuk így?
$jelszo = md5($jelszo);
$query = ''INSERT INTO register (..., pass, ...) VALUES (..., '$jelszo', ...);
$result = mysql_query($query);
Szerk:
Ja igen, még valami. Láttam objektumos MySQL kezelést is. Nem érdemes inkább azt használni, vagy a különbség csupán formai (pl. utolsó sor helyett $result = $conn->query($query);) ?
mysqli-s parancsokról mi a véleményetek? Pár szakkönyvben láttam, inkább ezeket használják...
[Szerkesztve] -
tkazmer
addikt
válasz
Jester01 #840 üzenetére
Jah....rendben.
Másik kérdésem, hogy azt szeretném megoldani, hogy a user ip címétől függően kiírjon, vagy ne írjon ki vmi az oldal. Így probáltam:
<?php
$ip = $_SERVER['REMOTE_ADDR';
print ''ip: $ip'';
$megf_ip = '127.0.0.1'
if ($ip = $megf_ip){
print''ok'';
}
?>
De ez így nem jó. Mit kellene módosítanom?
Jah, ez a gond vele:
Parse error: parse error, unexpected T_IF ... -
tkazmer
addikt
válasz
Jester01 #754 üzenetére
Ok, thx
Azt hogy tudnám megoldani, h egy kép elérési útja az legyen, amit kiolvas az adatbázis egy oszlopából?
Így próbáltam:
<img src=<?= $sor [''kep''?> border=1 ></img>
A $sor a köv:
($sor = mysql_fetch_array($adatb)) előtte egy while van. az adatb meg a mysql_query-t tartalmazza. -
RedAnt
aktív tag
válasz
Jester01 #726 üzenetére
.. és a tömb elemei köré is kell idézőjel, mint ahogy VladimirR is írta. Vagy idézőjel vagy macskaköröm - két idézőjel, ahogy innen copy-paste-elődne nem jó, ez okozhatta a hibát.
Amúgy ez a megoldás biztonsági szempontból nulla, ebből minimális ügyeskedéssel bármit kiszednek az adatbázisodból vagy törlik ahogy van, ld. mysql injection. Ezért érdemes legalább egy mysql_real_escape_string-gel a POST-olt változókat ''hatástalanítani''.
valahogy így:
$user = mysql_real_escape_string($_POST['user']);
$pass = mysql_real_escape_string($_POST['pass']);
mysql_query(''insert into teszt (user, pass) values ('$user','$pass')'');
[Szerkesztve] -
alitak
senior tag
válasz
Jester01 #708 üzenetére
Jujj, erre nem is gondoltam.
Az előző példa helyesen:
<html>
<head>
<title>Teszt</title>
</head>
<body>
<?php
if ($kapcs = mysql_connect(''localhost'',''user'',''pass'')) echo ''Connect OK<br>'';
else echo mysql_error();
if ($sel = mysql_select_db(''atadb'',$kapcs)) echo ''Select OK<br>'';
else echo mysql_error();
mysql_close($kapcs);
?>
</body>
</html>
mod: tkazmer: Azt csak simán írd át <title>Teszt</title> -ra
[Szerkesztve] -
tkazmer
addikt
válasz
Jester01 #697 üzenetére
Nah, lehet, h meg van a baj, ugyanis nem generálok semmiféle html-t. Úgy gondoltam, h erre semmi szükség, mikor láttam a könyvben a jegyzetet, h kiíratjuk az eredményt
Pontosan milyen html-t kéne ehhez generálni?
Ezzel a wgettel meg mit kezdjek? Leszedtem egy wget exet, amikor elindítom, előugrik egy parancsori ablak, ami rögtön el is tűnik -
tkazmer
addikt
válasz
Jester01 #695 üzenetére
A tábla persze nem üres, 53 sort tartalmaz.(ezt a mysql monitorral néztem meg...)
Megpróbáltam beilleszteni azt a kódot, amit adtál, bár sztem nem jól, és így továbbra sincs semmi eredmény(lehet, h a végén újratelepítem az egész apache+php+mysql triót, mostmár lanon keresztül sem tom elérni az adatbázist, pedig tegnap este még ment)
Most így néz ki az a rész:
$eredmeny = mysql_query($sql, $ossz) or die(''mysql query hiba'');
echo (mysql_num_rows($eredmeny))
// Végigmegyünk az eredmény sorain és megjelenítjük az adatokat
while ($ujTomb = mysql_fetch_array($eredmeny)) { -
alitak
senior tag
válasz
Jester01 #645 üzenetére
Igazad volt, más a probléma:
Hiba a kiválasztáskor: Access denied for user 'alitak'@'%' to database 'fajlok'
Viszont nem értem a problémát, mert az uw oldalán ez van írva:
kapcsolódás: <? $sql = mysql_connect(''SQL1.ULTRAWEB.HU'', ''alitak'', ''*''); ?>
Ezt bemásoltam, és nem enged be ezzel. -
paramparya
őstag
válasz
Jester01 #486 üzenetére
Az én általam felvetett
delete * from `tabla` where id = 'ertek' limit select count(id)-1 from `tabla` where id = 'ertek'
féle megoldást életre lehetne valahogy kelteni? Nekem sehogy sem sikerül...
Szerk.:
A második lekérdezés magában jó, megfelelő számot ad vissza, az elsőbe a számot helyettesítve megy, de összehegeszteni nem bírom az istennek se...
[Szerkesztve] -
darabka
tag
válasz
Jester01 #369 üzenetére
Ebben igazad van, adatbázisban nyilván nem való sztringként tárolni a dátumot, de a táblából nyert asszociatív (vagy numerikus indexelésű) tömbben már csak egyszerű szöveggel van dolgunk. Egyébként az strftime() valóban rugalmasabb, ha a fejlesztő teszem azt több nyelven is szeretne dátumszerű adatokat publikálni.
[Szerkesztve] -
chop
őstag
válasz
Jester01 #167 üzenetére
nos, miutan kicsit utananeztem, van egy eleg egyszeru megoldas..
(amugy de, valszeg behuzza mindet, de hirtelen csak ez jutott eszembe. nyilvan 100 rekordos tablanal ez nem gond, de par 10000 sornal mar komoly gondot okozhat)
$query=mysql_query(''SELECT id FROM table ORDER BY RAND() LIMIT 5'');
While ($row=mysql_fetch_object($query)) {
print ''$row->id<br>'';}
tipikusan olyan eset, hogy fejedre csapsz, hogy ''baszdmeg, ez nem jutott eszembe''
Aktív témák
Hirdetés
- iPhone-t használók OFF topikja
- Linux kezdőknek
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- EA Sports WRC '23
- alza vélemények - tapasztalatok
- Goddess of Victory:Nikke
- Horizon Forbidden West
- Tőzsde és gazdaság
- Anime filmek és sorozatok
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- További aktív témák...
- Apple iPhone 12 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Cooler Master CK550 RGB mechanikus (barna switch/magyar kiosztás)
- Újszerű Meta Quest 3 (128gb), 1 év garanciával +kiegészítőkkel
- Asus Prime B560M-K + i5 1500 + be quiet! + 32 Gb Patriot Viper 3.200 Mhz Beszámitok!
- Eladó Konfig Ryzen 7 7700 32GB DDR5 1TB SSD RX6800XT 16GB!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
- Telefon felvásárlás!! Samsung Galaxy A12/Samsung Galaxy A22/Samsung Galaxy A32/Samsung Galaxy A52
- Bomba ár! Dell Latitude 5500 - i5-8GEN I 8GB I 256SSD I HDMI I 15,6" FHD I Cam I W11 I Garancia!
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- LG 55G4 - 55" OLED evo - 4K 144Hz & 0.1ms - MLA Plus - 3000 Nits - NVIDIA G-Sync - FreeSync Premium
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged