Aktív témák
-
maestro87
őstag
Az a baj, hogy tuturiallokra nincs időm, viszon kellene a weboldal.
.htacces sincs, vagyis nem látható.:-)
A letöltés számláló működik úgy ahogy leírtad, csak ha új fájlt töltök fel, akkor mindig be kell jelentkezni a mysql -be és ott hozzáadni az url címet és ez az amit nem szeretnék.
De amit fentebb linkeltem egy másik fórumot ott leírják a megoldást, csak tudni kellene használni, amit én meg ugye nem tudok.:-)
Nem igaz, hogy nektek nincs egy ilyen "automa számlálótok".Egyébként így hivatkozok rá:
<a href="letoltes.php?id=1">pistike</a><?echo ' '. show(1) .'x';?> -
M.Úr
tag
válasz
maestro87 #1898 üzenetére
Eh... ez így nem fog menni. Ha szeretnél PHP-ben programozni, meg MySQL adatbázist használni, akkor előbb csinálj végig néhány tutorialt. Utána meg fogod érteni a válaszomat.
A letöltés számláló szkript meg akkor működik csak, ha egy olyan oldalon keresztül töltik le a fájlokat, ami tartalmazza a számláló szkriptet. Pl. ha van egy weboldalad: www.maestro87.hu, és ott a www.maestro87.hu/letoltes.php fájlon keresztül töltik le mondjuk a pistike.jpg-t, akkor azt tudod számolni, naplózni. Viszont ha simán beírja valaki a böngészőbe hogy www.maestro87.hu/pistike.jpg, akkor azt nem tudod PHP szkripttel megszámolni.
Szerk.: Illetve meg tudod, ha babrálsz a .htaccess-szel. De ezt felejtsd el, ehhez még én sem értek igazán, téged is csak összezavarna :-)
-
-
Inv1sus
addikt
Na csak sikerült magamtól megoldani. Akit érdekel a megoldás:
ORDER BY ABS(REPLACE(tadaaaa, '.', ''))
-
Inv1sus
addikt
Szeretnék egy kiolvasást csinálni az adatbázisból úgy, hogy árak szerint rendezi őket sorba. A probléma az, ezek az árak varchar mezőkben vannak tárolva, mivel a következő formátumba vannak rögzítve, mint például: 4.332 Ft
Van valamilyen mód arra, hogy a lekérdezésbe át legyen alakítva mondjuk ilyen formába: 4332?
-
M.Úr
tag
válasz
maestro87 #1891 üzenetére
"hogy lehetne kiegészíteni úgy, hogy ne kelljen mindig belépni a mysql admin felületére ha új linket teszek fel és ott megadni az url címet, hanem automatikusan megcsinálná helyettem"
A letoltes.php-ban ellenőrzöd, hogy a GET-ben kapott URL-hez tartozik-e adatbázis bejegyzés. Ha még nincs, létrehozol egyet.
Viszont vigyáznod kell ezzel, és mindent alaposan ellenőrizned (validálnod) kell, amit a GET-ben kapsz. Guglizz erre: "php mysql injection""Tehát a tárhelyen lévő összes fájlt figyelné, hogy ki, mikor tölti le"
Erre konkrétumot nem tudok, de szerintem az Apache beállításai között van ilyen lehetőség. Már ha Apache-on fut az oldalad...
-
maestro87
őstag
Van ez a letöltés számlálóm: [link]
Ezt, hogy lehetne kiegészíteni úgy, hogy ne kelljen mindig belépni a mysql admin felületére ha új linket teszek fel és ott megadni az url címet, hanem automatikusan megcsinálná helyettem. Tehát nekem csak a linket kellene beszúrnom az index.php-ba és máris számolná.
Találtam egy ilyet , de nem értek hozzá.:-(Esetleg IP cím tárolását is, hogy lehetne megoldani? Az egyik mappa listázómba van egy olyan script, hogy egy txt-be elmenti az ip-t + net szolgáltató nevét, helyét meg a letöltés idejét és mellé rakja a fájl nevét is, amire kattintottak/letöltötték. Ilyet esetleg nem tudtok külön, hogy csak fel kelljen másolnom ftp-re és már működne is? Tehát a tárhelyen lévő összes fájlt figyelné, hogy ki, mikor tölti le? Sajnos ez a listázó nem valami kompatibilis a tárhellyel és nem tudtam kivenni belőle ezt a funkciót, hogy áttegyem egy másik listázóba.:-(
Remélem érthető voltam. Minden segítséget előre is köszönök!
-
M.W.H
aktív tag
válasz
Sk8erPeter #1889 üzenetére
feltettem, és a feltöltés rész oké még töltötte is fel mert kiprobáltam hogy kissebb és nagyobb fájlt mennyi ideig tölt fel. de nem kérte az accot/pass-t és sehol se találtam meg a fájlokat amiket elvileg feltöltött. szal ennyi meg atw-n nemtudtam chmodot adni neki.
a program oldalán irják ha nem megy a chmod akkor megtudják csinálni csak bekell irni az ftp-t meg mindent de már itt se tudott csatlakozni az atw-hez:/lehet nem érthető nagyon álmos vagyok:/
-
M.W.H
aktív tag
üdv mesterek!
szeretnék csinálni egy webes feltöltőt atw-s oldalra, ami úgy müködne hogy ftp-n keresztül. sajnos a programmal nem ment amit erre találtak ki, egy másik megoldást meg valamért nemtudtam bekonfigolni.
ez lenne az, a második hozzászolásba.
mindenféle ötletet szivesen fogadokhja nem kell minden usernek külön beléptető meg ilyenek elég ha az ftp accot irják, be és már mehet is az upload
köszi
szerk.: lehet atw nem is engedélyezi, lehet csak én balfaszkodok
-
rt06
veterán
en olyan megoldast hasznaltam, hogy egyszer taroltam a cikk fejlecet (cim, szerzo, datum, kategoria, ilyesmik) egy tablaban, egy masikban pedig az egyes oldalakat (oldalcim, tartalom, oldalszam), szerintem igy a legtisztabb
jeges: amit fentebb irtam, amiatt a referer hianyanak elitasitasa lehet false positive is
a masik resszel, miszerint a meglete nem elegendo, tokeletesen egyetertek, semmibol nem tart referer-t hamisitani -
hakosh
tag
Üdv!
Azon tanakodom, hogy 4-5 oldalas cikkeket hogyan lehetne tárolni. Arra gondoltam, hogy egyben eltárolom az egész cikket az adatbázisban és mondjuk [oldaltores]-sel jelzem az oldalak végét. Nem lenne "pazarlás" minden oldal esetében lekérni és mindig csak az 1/5-ét felhasználni? Arra is gondoltam, hogy sima .html fájlokban tárolnám, de azt később nehéz lehet adminisztrálni, nem? Ki csinált már ilyet és hogyan valósította meg? Mi lenne a jó megoldás?
-
rt06
veterán
sajnos nem tudok alterntivat, viszont en a fenti problema miatt nem hasznalom
file letoltest akartam ugy megcsinalni, hogy csak akkor kezdi a file kuldeset, ha a referer a site-on belulrol jott, maskulonben a letolto oldalt mutatja, viszont az emlitett oknal fogva, volt, akinem egyaltalan nem mukodott a dolog, nem tudta letolteni az allomanyokat
nem mernek ra megeskudni, de ugy remlik, a kerio (most mar azt hiszem sunbelt a nevuk) tuzfala tud ilyet, raadasul alapbeallitaskent engedelyezve is volt
-
jeges
senior tag
ezek csak példák, inkább azt akartam szemléltetni, hogy a kérdés jóval túlmutat egy függvény használatán. nem véletlen, hogy az eszközök, logikák többsége nem kapcsolódik egyetlen nyelvhez (jelen esetben a php-hez).
http referer: az az oldal, ahonnan az adott oldalra érkeztél. a $_SERVER tömb tárolja egyébként, a tömbre keresve a php manual-ban is megtalálod.
akkor hasznos többek közt, ha nem akarod, hogy a keresősorból közvetlenül is elérhető legyen a tartalom. ilyenkor a program elején ellenőrzöd, hogy mi van a http referer-ben, és ha nem az, ami kellene, akkor hibát dobsz. -
jeges
senior tag
filter_var a barátod
meg a rendszeres db mentésszerk: "egyéb módszer"-be meglehetősen sokminden belefér a felhasználó kiléptetésétől a http referer ellenőrzésén keresztül a négy-szem elv alkalmazásáig, ill a fent már említett mentési rend kialakítása is ide tartozik. erre külön recept nincs, az alkalmazott eszközök környezettől függően lehetnek mások.
-
rt06
veterán
a linkelt algoritmussal nekem az a problemam, hogy mivel a salt az emailcim sha1 hash-ebol keszul, ezert:
- email valtoztatasa problemas lehet
- a salt kizarolag szamjegyeket es a latin abc elso 6 kisbetujet fogja tartalmazni (imho erdemes ott is a teljes karakterkeszletet hasznalni)a kliensoldali ellenorzes jo, mert leveszi a teher egy reszet a szerverrol, viszont semmifele keppen sem ajanlott kizarolag arra tamaszkodni, mivel - mint irtad - pofonegyszeruen kijatszhato*
esetleg vess egy pillantast erre (a jtr tobb, mint ezerszer lassabban tudja torni az ezzel hash-elt jelszavakat, mint a mezei sozott md5 hash-t)
*: a hetekben regisztraltam egy site-ra, feliratokat lehet letolteni
az oldal ingyenes, viszont vannak korlatozasok (kedvencek koze legfeljebb 5 tetel teheto be), amik feloldasahoz vip felhasznalova kell valni, amihez viszont anyagilag kell tamogatni az oldalt
a fenti korlatozas pusztan javascript-tel van megoldva, ami azt jelenti, hogy csupan par masodperc plusz, mig valaki egy ujabb tetelt a kedvencek listahoz, annak ellenere, hogy 5, vagy annal tobb tetel szerepel mar ott
amennyiben hasznalnanak szerveroldali ellenorzest is, ez nem lenne (ilyen egyszeruen) megoldhato -
j0k3r!
őstag
ertem.
kis off:
ha jol olvastam, akkor az sha1 egy 40 karakter hosszu hash-t general (ez ugye 160 bit). a kerdesem az, hogy ehhez kb. nagysagrendileg milyen hosszu 'sot' szoktak/szoktatok hozzaadni?
ez a pelda egy jo kiindulopont?
illetve mennyire erdemes js scriptet irni, ami peldaul ellenorzi a jelszot [a-z,A-Z,0-9], mielott elkuldjuk oket? (valahol azt olvastam, hogy js-t eleg egyszeruen meg lehet kerulni) -
rt06
veterán
nem maga a komment a problema, amig az az aposztrofokon belul van, nem okoz galibat
az aposztrofokat, idezojeleket kell megfeleloen escape-elnijelszot hash-elni, sozni, megint hash-elni mindenkepp erdemes (akar tobbszor is), de ennel is fontosabb a megfelelo (hosszusagu/bonyolultsagu) jelszo megkovetelese
ilyen celu ellenorzesre en pl szoktam az altalam uzemeltetett rendszereken hasznalni a jtr-t, ami egy jelszotoro program
ha valaki jelszava megbukik (sajnos eleg surun van ami az elso par masodpercben megfejtesre kerul), az vagy kap masikat, vagy allithat be maganak masikat -
j0k3r!
őstag
koszonom.
erdemes double escapelni, vagy nem sok haszna van? jelszot saltolni, aztan hashelni az mennyit szamit? (pl.: egy login form-rol van szo)
valamint az ellen hogy lehet vedekezni, amikor kommentet hasznalnak sql injection soran (--, #, stb.)? -
Frigo
őstag
Escape függvények használata alap ,ezenfelül érdemes megismerkedni a mysqli ,PDO prepared statement-jével .Illetve ügyelni kell arra hogy az adatbázishoz való csatlakozáskor olyan usert adjunk meg akinél csak a legalapabb műveletek vannak engedélyezve (INSERT,UPDATE,DELETE) és véletlenül se tudjon táblát vagy adatbázist droppolni.
-
j0k3r!
őstag
hello!
megneztem a ceh sql-injectionnal kapcsolatos videojat, es az volna a kerdesem, hogy ti miket hasznaltok/miket kellene hasznalni (php fuggvenyek, egyeb modszer) sql injection ellen?
-
HolyDay
tag
válasz
Sanyi19 #1866 üzenetére
Én valahogy így oldanám meg:
<?php
$conn=mysql_connect("localhost", "root", "");
mysql_select_db("city");
$date=date("m-d");
$szulinapos="SELECT nev from felhasznalok where datum like '%%-$date'";
$szulinap = mysql_query("$szulinapos");
while($szulinap_adat=mysql_fetch_row($szulinap))
{
$szulinaposok[] =$szulinap_adat[0];
}
if(is_array($szulinaposok)){
foreach($szulinaposok as $szulinapos_felhasznalo){
echo $szulinapos_felhasznalo."<br>";
}
}else{
echo "Senkinek nincs ma szülinapja";
}
?> -
Sanyi19
őstag
Sziasztok!
Egy weboldalra csinálok egy "születésnap kijelzőt" php-ben.A főoldalamra rakom be egy include parancsal, de elakadtam.Ha van születésnap akkor jó is működik, de azt szeretném megcsinálni, hogy ha nincs épp szülinapja senkinek sem akkor azt írja ki, hogy nincs szülinapja egyik felhasználónak sem. Hogy tudom ezt kivitelezni?
Próbáltam úgy ,hogy egy if -el megnéztem ,hogy a $szulinap_adat[0]="" -e ha igen akkor értéket adtam neki de úgy nem ment,hogy lehet ezt megoldani?
Biztos nagyon egyszerű de valahogy nem tudok rájönni, segítsetek már légyszives ha tudtok, bármilyen segítséget örömmel veszek.
A kód:
<?php
$conn=mysql_connect("localhost", "root", "");
mysql_select_db("city");
$date=date("m-d");
$szulinapos="SELECT nev from felhasznalok where datum like '%%-$date'";
$szulinap = mysql_query("$szulinapos");
while($szulinap_adat=mysql_fetch_row($szulinap))
{
echo "$szulinap_adat[0]<br>";
}
?> -
zsoltke
tag
üdv, készítettem egy egyszerű php-s forumot mysql táblákkal, mikor a hozzászólást sortördeléssel beírod és ok-t nyomsz akkor az adatbázisba helyesen kerül be a megformázott szöveg, de amikor egy select-tel kiolvasom a táblából és php-val kiíratom akkor formázatlanul jelenik meg, tudnátok ebben segíteni, hogy úgy nézzen ki a szöveg mint amikor beírtam a szövegmezőbe? köszi
-
rt06
veterán
#!/usr/bin/php -q
<?php
#nem az include-on mulik, hanem mint PazsitZ irta, a lathatosagon
#amit a fuggvenyen kivul hozol letre, az nem latszik a fuggvenyben, s amit a fuggvenyben hozol letre, az nem latszik a fuggvenyen kivul
#erre hasznalhatsz a fuggevnynek atadott parametereket (ha vissza is akarod kapni, mi valtozott a fuggvenyben, akkor cim szerinti atadassal), illetve a fuggvenyek visszateresi erteket
function pluszegy() {
printf( "%d, %d\n", $x, $y ); // 0, 0 - illetve 2 notice, mert itt nem letezik az $x es $y
$x++; // notice, mert itt nem letezik az $x
$y++; // notice, mert itt nem letezik az $y
printf( "%d, %d\n", $x, $y ); // 1, 2
}
function pluszegy_ertek( $x, $y ) {
printf( "%d, %d\n", $x, $y ); // 1, 2
$x++; // 1 -> 2
$y++; // 2 -> 3
printf( "%d, %d\n", $x, $y ); // 2, 3
}
function pluszegy_cim( &$x, &$y ) {
printf( "%d, %d\n", $x, $y ); // 1, 2
$x++; // 1 -> 2
$y++; // 2 -> 3
printf( "%d, %d\n", $x, $y ); // 2, 3
}
function pluszegy_vissza() {
return 5;
}
function pluszegy_vissza_ertek( $x, $y ) {
printf( "%d, %d\n", $x, $y ); // 1, 2
$x++; // 1 -> 2
$y++; // 2 -> 3
printf( "%d, %d\n", $x, $y ); // 2, 3
return $x + $y; // 2+3 -> 5
}
function pluszegy_vissza_cim( &$x, &$y ) {
printf( "%d, %d\n", $x, $y ); // 1, 2
$x++; // 1 -> 2
$y++; // 2 -> 3
printf( "%d, %d\n", $x, $y ); // 2, 3
return $x + $y; // 2+3 -> 5
}
$x = 1;
$y = 2;
printf( "fuggvenyhivas parameter nelkul\n%d, %d\n", $x, $y ); // 1, 2
pluszegy();
printf( "%d, %d\n\n", $x, $y ); // 1, 2
$x = 1;
$y = 2;
printf( "fuggvenyhivas ertek szerinti atadassal\n%d, %d\n", $x, $y ); // 1, 2
pluszegy_ertek( $x, $y );
printf( "%d, %d\n\n", $x, $y ); // 1, 2
$x = 1;
$y = 2;
printf( "fuggvenyhivas cim szerinti atadassal\n%d, %d\n", $x, $y ); // 1, 2
pluszegy_cim( $x, $y );
printf( "%d, %d\n\n", $x, $y ); // 2, 3
$x = 1;
$y = 2;
printf( "fuggvenyhivas parameter nelkul\n%d, %d\n", $x, $y ); // 1, 2
$z = pluszegy_vissza();
printf( "%d, %d, %d\n\n", $x, $y, $z ); // 1, 2, 5
$x = 1;
$y = 2;
printf( "fuggvenyhivas ertek szerinti atadassal\n%d, %d\n", $x, $y ); // 1, 2
$z = pluszegy_vissza_ertek( $x, $y );
printf( "%d, %d, %d\n\n", $x, $y, $z ); // 1, 2, 5
$x = 1;
$y = 2;
printf( "fuggvenyhivas cim szerinti atadassal\n%d, %d\n", $x, $y ); // 1, 2
$z = pluszegy_vissza_cim( $x, $y );
printf( "%d, %d, %d\n\n", $x, $y, $z ); // 2, 3, 5
?> -
-
j0k3r!
őstag
koszonom, igy mar jo lesz szerintem. de akkor most ezt nemertem, ha beincludeolok egy php filet, akkor a fuggveny torzson belul nem elerhetoek a torzson kivuli 'includeolt' valtozok/tombok?
pl:out.php
<?php $out = 'valami'; ?>main.php
<?php
require_once('out.php');
function kiir()
{
echo $out;
}
?>ebben az esetben a kiir fv. nem fogja latni az $out valtozot?
-
rt06
veterán
a fuggvenyen belul nem lathatoak a $dbhost, $dbuser, $dbpass, $dbname valtozok, ezert nem sikerul kapcsolodnod
add at oket parameterkent a ConnectToDb fuggvenynek, pl.:
dbconnect.php
<?php
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "";
$dbname = "images";
?>fuggveny:
<?php
require_once 'dbconnect.php';
function ConnectToDb( $host, $user, $pass, $database )
{
$con = mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db($dbname);
}
....
ConnectToDb( $dbhost, $dbuser, $dbpass, $dbname );
?>esetleg, hogy ne kelljen, csak egy parametert atadnod (szebben nez ki talan), atszervezheted picit a dolgot, pl.:
dbconnect.php
<?php
$db = array();
$db["host"] = "localhost";
$db["user"] = "root";
$db["password"] = "";
$db["database"] = "images";
?>fuggveny.php
<?php
require_once( "dbconnect.php" );
function connectToDB( $db ) {
$dbConnection = mysql_connect( $db["host"], $db["user"], $db["password"] );
mysql_select_db( $db["database"], $dbConnection );
return $dbConnection;
}
$dbc = connectToDB( $db );
?> -
j0k3r!
őstag
hello!
most raktam ujra xampp-ot, aztan probalnek egy queryt futtatni, erre azt irja, hogy:
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\Program Files\xampp\xampp\htdocs\KepFeltolto\functions.php on line 6pedig elvileg phpmyadmin nev az 'root' pw meg nincs('')
dbconnect.php
<?php
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "";
$dbname = "images";
?>fuggveny:
<?php
require_once 'dbconnect.php';
function ConnectToDb()
{
$con = mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db($dbname);
}
....
?>valakinek valami otlet? probaltam mar jelszot is irni, de akkor meg 'kizartam' valahogy magam, mert mar a phpmyadmin feluletre se engedett vissza, ezert raktam ujra az egeszet.
elore is koszonom, ha van valakinek valami otlete. -
-
ubid
senior tag
Helló!
mysql.atw.hu ról lenne szó :
A gondom az lenne, hogy sehogy sem bírom rávenni a mysql-t hogy csatlakozzon.
egyenlőre csak egy egyszerű kapcsolat ellenörzést próbáltam php-ból... de még ezt se csinálja meg.
phpmyadminra be tudok lépni szerkeszteni is tudok néha, viszont ide se enged be mindig a helyes jelszóval.... ...sql eket futtatni..bármit.
viszont így nem akar kapcsolódni sehogy sem...
mi lehet az oka ?
<?php
$kapcsolat = mysql_connect("127.0.0.1", "ubesz", "********");
if (!$kapcsolat) die("Nem sikerült kapcsolódni az adatbázishoz!");
mysql_select_db("ubesz", $kapcsolat) or die("Nem sikerült kiválasztani az adatbázist!");
mysql_close($kapcsolat);
?>
Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on '127.0.0.1' (10061) in C:\xampp\htdocs\check.php on line 2
Nem sikerült kapcsolódni az adatbázishoz! -
M.W.H
aktív tag
hejjhó
olyan login panelt keresek egy weboldalra ami nem használ globalokat. esetleg tudtok segíteni egy ilyen megirásába php-ban? -
LW
őstag
Normális megoldást azóta sem találtam, csak gányoltam kicsit.
SELECT rights.rgt_mod_id, rights.rgt_val
FROM users
LEFT JOIN mtm_gr_u ON mtm_gr_u.u_id = users.u_id
LEFT JOIN groups ON mtm_gr_u.gr_id = groups.gr_id
LEFT JOIN mtm_rgt_gr ON mtm_rgt_gr.gr_id = groups.gr_id
LEFT JOIN rights ON mtm_rgt_gr.rgt_id = rights.rgt_id
WHERE users.u_id = 1 and rights.rgt_id not IN(
SELECT rights.rgt_id
FROM users
LEFT JOIN mtm_rgt_u ON mtm_rgt_u.u_id = users.u_id
LEFT JOIN rights ON mtm_rgt_u.rgt_id = rights.rgt_id
WHERE users.u_id = 1 and mode = "deny")
UNION
SELECT rights.rgt_mod_id, rights.rgt_val
FROM users
LEFT JOIN mtm_rgt_u ON mtm_rgt_u.u_id = users.u_id
LEFT JOIN rights ON mtm_rgt_u.rgt_id = rights.rgt_id
WHERE users.u_id = 1 and mode = "allow" and rights.rgt_id NOT IN(
SELECT rights.rgt_id
FROM users
LEFT JOIN mtm_rgt_u ON mtm_rgt_u.u_id = users.u_id
LEFT JOIN rights ON mtm_rgt_u.rgt_id = rights.rgt_id
WHERE users.u_id = 1 and mode = "deny") -
LW
őstag
Sziasztok.
Egy kis segítséget szeretnék kérni tőletek. Van egy bonyolultabb fajta lekérdezésem és nem vágom a halmazműveleteket.A lekérdezés lekérdezi:
A : A felhasználó jogait csoportok alapján
B : A felhasználó extra jogait csoporton kívül
C : A felhasználó tagadott jogait csoporton kívülA végeredmény úgy nézne ki, hogy A (unio) B (különbség) C
Valahogy így nézne ki, viszont nem találtam hirtelen gulgin mivel lehetne megoldani.
SELECT rights.rgt_mod_id, rights.rgt_val
FROM users
LEFT JOIN mtm_gr_u ON mtm_gr_u.u_id = users.u_id
LEFT JOIN groups ON mtm_gr_u.gr_id = groups.gr_id
LEFT JOIN mtm_rgt_gr ON mtm_rgt_gr.gr_id = groups.gr_id
LEFT JOIN rights ON mtm_rgt_gr.rgt_id = rights.rgt_id
WHERE users.u_id = 1
UNION
SELECT rights.rgt_mod_id, rights.rgt_val
FROM users
LEFT JOIN mtm_rgt_u ON mtm_rgt_u.u_id = users.u_id
LEFT JOIN rights ON mtm_rgt_u.rgt_id = rights.rgt_id
WHERE users.u_id = 1 and mode = "allow"
(valami)
SELECT rights.rgt_mod_id, rights.rgt_val
FROM users
LEFT JOIN mtm_rgt_u ON mtm_rgt_u.u_id = users.u_id
LEFT JOIN rights ON mtm_rgt_u.rgt_id = rights.rgt_id
WHERE users.u_id = 1 and mode = "deny"szerk: ill, ha ugyan az a jog csoporton belül és külön is megvan, hogyan tudom megoldani, hogy csak egyszer jelenjen meg?
-
M.W.H
aktív tag
válasz
DeltaPower #1847 üzenetére
hmm akkor ez igy müködni fogy mysqladmin -p create dbname
mert pass nélkül nem megy, azért mert jelszó védi... aztán ha meg nem akkor nemkezeli a webszerver a db-ket...
-
M.W.H
aktív tag
válasz
DeltaPower #1840 üzenetére
ahha szal nincs parám abból hogy nemtudom használni ezt: mysqladmin create dbname
mert a mysql cli-jébe tudom ugyanugy? csak mert épp a mysql 24 ora alattot tanulmányozom és ott nagyon mutogatja a srác hogy milyen jo a mysqladmin. csak épp nemtudom használni -
PazsitZ
addikt
Úgy tűnik JOIN-olni szeretnél.
Azt így valósíthatod meg.
SELECT termék.kód, termék.név FROM termék, rendelés WHERE termék.kód = rendelés.kód);második esetben pedig gondolom ez lenne a helyes:
SELECT termék.kód, név, 'legyártható' as gyárthat
FROM termék, szerkezet, anyag
WHERE szerkezet.azonosító = anyag.azonosító AND szerkezet.kód = termék.kód -
ArchElf
addikt
1) Select Count(*) soha nem ad vissza 0-t. Ha nincs ilyen sor akkor Null-t ad vissza. Ráadásul a beágyazott select-ed nem tartalmazza a termék táblát, és nincs is szelektor kifejezés (JOIN + ON, vagy WHERE), ilyenkor a két tábal mártixa lesz az eredmény (minden sor az első táblából minden sorral a básodik táblából)
2) Készlet-mennyiség lehet kisebb vagy egyenlő, mint 0 (van ilyen mező bármelyik adatbázis táblában)? Mi az az ALL? Amúgy a végére kell lezáró zárójel nem a select xxx után.
A JOIN-nak nézz utána jobban...
AE
-
asthma
tag
Sziasztok! Most ismerkedem még csak az SQL lekérdezésekkel, és lenne pár dolog amivel már az elején nem boldogulok. Megköszönném, ha valaki leírná az alábbi 2 lekérdezés eredményét (a vastagon szedett résszel van problémám):
1.)
SELECT kód, név
FROM termék
WHERE 0 = (Select Count(*) FROM rendelés WHERE termék.kód = rendelés.kód);2.)
SELECT termék.kód, név, 'legyártható' as gyárthat
FROM termék
WHERE 0 <= ALL (Select készlet-mennyiség)
FROM szerkezet, anyag
WHERE (szerkezet.azonosító = anyag.azonosító AND szerkezet.kód = termék.kód)Köszönöm türelmeteket!
-
DeltaPower
addikt
először:
mysql -pmegadod a jelszót, utána bejön a prompt, oda beírod:
create database xyzjelszó nélkül azért nem enged be, mert a mysql/mysqladmin egy konzolos kliens, tehát név/jelszóval kapcsolódik a szerverhez. alapértelmezetten a root felhasználóval próbál kapcsolódni jelszó nélkül, de nálad úgy tűnik, van root jelszó, így nem enged be jelszó nélkül.
-
M.W.H
aktív tag
nah igy betudok lépni
mysql -p és beirom a pass-t ha csak simán mysql-t irok akkor nem... akkor ezt irjaERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
ha pedig ezt irom neki mysqladmin create db akkor pedig ez a válasza:
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
???
-
M.W.H
aktív tag
hy
van egy debian szerverem minden szükségest feltettem. hülye kérdés.. szeretnék csinálni egy adatbázis táblát ami üres, és elszeretném menteni egy mappába. lehet ilyet? és hogy? -
maci25
aktív tag
Azt szeretném ha a felhasználoknak minden engedélyezve volna az általuk létrehozott adatbázikokkal. Hozhasanak létre maguknak több adatbázis.
A felhasználo létrehozásánál "Azonos nevű adatbázis létrehozása, és az összes jog engedélyezése" jelölöm ki.
Ebböl én arra követketettem ,hogy pontosan az történik amit és szeretnék. De nem.
A felhasználok nem tudnak uj adatbázik létrehozni csak ha a globális jokoknál engedélyezem a create lehetöséget.
De igy mindegyik felhasználo látja az összes adatbázist a serveren. -
Tmano
csendes tag
válasz
RedSign #1835 üzenetére
Szia!
Sajnos ezt a vonalat nem próbáltam még meg de nem is igazán hiszem, hogy adnak hozzáférést az adatbázisukhoz, én sem adnék :S
asszem fejlesztőt/programozót kellene keresnem, állítólag ezt nem olyan nagy dolog leprogramozni, hogy egy script lépésről lépésre letöltse az összes terméknevet, leírást képet árat. Kérdés mennyibe kerülne, van az az összeg ameddig megtérülne a dolog...
t
-
cucka
addikt
Szerintem erre egy egyedileg elkészített script a megfelelő megoldás, nem tartom valószínűnek, hogy találnál olyan általános célú szoftvert, ami egy egyedi weboldalnál a megfelelő adatokat a megfelelő struktúrájú adatbázisba tudná menteni. Az előző hozzászólásban említett program annyit tud, hogy "bejárja" a weboldalt és lementi az egészet html formátumban, plusz minden mást, ami hozzá tartozik (képek, css, stb.), de ez elég távol áll attól az igényedtől, hogy az adatokat valamilyen strukturált formában kapd meg.
-
Tmano
csendes tag
Sziasztok!
Egy weboldal tartalmát kellene lekapni egy adatbázisba (terméknév, leírás, ár, fotó), erre létezik valamilyen progi(fizetős/nem fizetős) esetleg valaki tudna ilyet csinálni ha szükséges?
A történet az, hogy viszonteladói lettünk egy amerikai cégnek, és állítólag nem tudják odaadni emberi módon a termékeiket, (küldtek katalógust), viszont van 12000 termékük..nincs nagyon kedvem a Save as.. -al így megbarátkozni.
van valakinek ötlete?
köszi
t -
zka67
őstag
Sziasztok!
Egy olyan problémám van, hogy egy idő után megszakad a mysql kapcsolat.
Részletezve, a libmysql.dll-t használom delphi alatt. A program indulásakor csatlakozik az adatbázishoz. Ha 8-10 órán belül történik lekérdezés, akkor semmi gond nincs, de ha ennél hosszabb ideig nem történik semmi, akkor megszakad a kapcsolat és csak az újracsatlakozás segít.
Ez vajon mitől lehet? Esetleg a mysql-ben van valami timer ami nézi, hogy milyen régen nem történt semmi és a régen nem használt kapcsolatot eldobja? Ha igen, akkor lehet ezen állítani, esetleg teljesen kiiktatni ezt a funkciót?
Előre is köszönöm a segítséget.
-
Fauno
tag
Sziasztok!
Mysqlt tanulok "A tanuljuk meg a Mysql használatát 24 óra alatt" című könyvből
a 4 lecke 48 oldalán kicsit elakadtam. .Dos parancssorba a következő szöveget gépeltem be:
mysqladmin create test_DB
erre a következő hiba üzentet kaptam:
mysqladmin: conect to server at "localhost' failed error: 'Access denied for user 'ODBC'@'localhost' (using password: No)'
Mi lehet a gond?
Mi az a ODBC kapcsolat, és mi kell hozzá, hogyan kell beállítani?üdv.
fauno -
pape03
csendes tag
Hello!
Azt szeretném kérdezném, hogy itt mi a POST szintaktikája:for($i=1;$i<=$f;$i++){
for($j=1;$j<=$meccs;$j++){
print $_POST['h$i$j'];
}
}Hol vannak a postnál a különböző idézőjelek, pontok?
-
Briganti
tag
igen erre enis rajottem, es majdnem vert izzadtam addig is amig kerestem a problemat, es most is majdnem vert izzadok mergembe, mikor rajottem hogy mi volt a gond
amit a te megoldasoddal szepen kikuszoboltel
csak eppen en az adatbazisbol a datumot Y-m-d formaba kapom meg, es ezert nem jo nekem a string-es megoldas ... egy kis javitassal az enyem is mukodo kepesse lett, annyi volt a gond, hogy a draga jo javascript baratunk a honapokat 0-tol kezdi ... s ezert lepett at a kovetkezo evbe, es ezert nem volt jo a timestamp
tehat a honap csokkentesevel minden ugy mukodott ahogy annak mukodnie kellet
minden esetre koszonom a gyors, es mukodo valaszt!
-
zka67
őstag
válasz
Briganti #1822 üzenetére
<?
date_default_timezone_set('UTC');
$ts = strtotime("2010-12-15 18:00:00");
echo "1 - PHP time: " .$ts ."<br>";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
<script>
var d = new Date()
var timezone = -d.getTimezoneOffset()*60;
var cur_date = new Date("Dec 15 2010 18:00:00");
ts = Math.round(cur_date.getTime()/1000);
document.write("2 - js time: " + ts + "<br>");
document.write("3 - timezone offset: " + timezone +"<br>");
document.write("4 - utc time: " + (ts + timezone) + "<br>");
</script>
</head>
<body>
</body>
</html>Megmagyarázhatatlan módon a
var cur_date = new Date(2010, 12, 15, 18, 0, 0, 0);
sorod a következő eredményt adja:
Sat Jan 15 2011 18:00:00 GMT+0100 -
Briganti
tag
Hellosztok, gyertek segitsetek ki
a problemam nagyon egyszeru: egy php-val generalt timestamp-et kellene osszehasonlitsak egy javascriptel generalt timestamp-el ... a gond ott van, hogy nem valosak az eredmenyek, nem tudom oket egy timezone-ba hozni
a test kod ugy nez ki hogy:
<?
$date = date("2010-12-15 18:00:00");
$d = new DateTime($date, new DateTimeZone('UTC'));
$ts = $d->getTimestamp();
echo $d->format("Y-m-d H:i") ."<br>";
echo "1: " .$ts ."<br>";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
<script>
var cur_date = new Date(2010, 12, 15, 18, 0, 0, 0);
cur_date = Math.round(cur_date.getTime()/1000);
document.write("2: " + cur_date+"<br>");
var d=Date.UTC(2010,12,15,18);
document.write("3: " + d/1000);
</script>
</head>
<body>
</body>
</html>a kimenet:
2010-12-15 18:00
1: 1292436000
2: 1295107200
3: 1295114400probaltam GMT-re hozni (javascriptben getTimeZoneOffset vagy mi, es elvegeztem vele a szukseges muveleteket) mind a kettot, az sem jott ossze
valahogy el kellene erjem hogy kapjak egy timestamp-et javascriptel, ami a (1) -essel megeggyezo, vagyon nagyon kicsi a kulonbseg ...
Ha van valami jo tippetek, akkor ide vele
-
Speeedfire
félisten
válasz
Speeedfire #1816 üzenetére
-
vamzi
senior tag
Sziasztok!
Még mindig karakterkódolás problémával küzdök. Ha valaki ékezetes betűvel beregisztrál, akkor az nem tud bejelentkezni, mert a sütiben lévő neve([pl: tészta]aminek a kódolása megfelelő) nem stimmel az adatbázisban szereplővel(tĂŠszta).
Ezt hogy tudnám kiküszöbölni? Mi mindennek állítsam át a kódolását és hogyan?
Ha phpmyadminban a MySQL kapcsolat illesztése menüpontban a latin2_hungarian_ci-t választom az jó az adatbázisomnak? Továbbá, ha a tábláimnál is ugyan ezt az illesztést használom az úgy jó?(Próbálgattam állítgatni, de a kódolás továbbra sem volt jó. Egyébként ha phpmyadminban nézem a táblámat, akkor helyesen jelennek meg a karakterek, de ha lekérem az utf8-cal kódolt oldalammal a rekordokat, akkor már helyetelen a nevek kódolása)
Remélem sikerült elmagyaráznom, mi is a gondom és tudtok nekem segíteni. Mysql-hez nem rég kezdtem csak hozzányúlni ez még nekem kicsit távoli, de próbálkozok.
-
Speeedfire
félisten
Üdv!
Lenne egy kis gondom, konkrétan a htaccess-el. Ahol most vagyok (newhosting) ott szerver csere volt át kellett a cuccaimat költöztetni és most gond van vele. Eddig tökéletesen működött, de most valami miatt már nem.
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z-]+)$ index.php?oldal=$1 [QSA,L]
RewriteRule ^rss.xml$ rss.php [L]
RewriteRule ^([^/]+)-([0-9]+)$ index.php?oldal=mutat&sorszam=$2 [QSA,L]
RewriteRule ^cimke=([^/]+)$ index.php?oldal=kereses&cimke=$1 [QSA,L]
RewriteRule ^kategoria/([a-z-]+)-([0-9]+)$ index.php?oldal=kategorialista&sorszam=$2 [QSA,L]
RewriteRule ^kategoria/([a-z-]+)-([0-9]+)/oldal/([0-9]+)$ index.php?oldal=kategorialista&sorszam=$2&page=$3 [QSA,L]
RewriteRule ^([a-z-]+)/([a-z-]+)-([0-9]+)$ index.php?oldal=$1&sorszam=$3 [QSA,L]
RewriteRule ^tartalom/oldal/([0-9]+)$ index.php?oldal=tartalom&page=$1 [QSA,L]
RewriteRule ^rss/([a-z-]+)-([0-9]+).xml$ rss-kat.php?id=$2 [QSA,L]
</IfModule>Ez van a htaccess-ben, de nem akar menni. Felismeri, hogy melyik oldalról van szó, de nem az index.php-ba inculodja be őket.
Ez az oldal címe: [link]
-
Briganti
tag
válasz
RedSign #1813 üzenetére
Csak hogy lassatok hogy valahol nekem is igazam volt
:
If you use file based sessions PHP will lock session file for whole script execution duration, which means all requests from the same sessions will be serialized on PHP level
Forras: Link
Most a kerdes az, hogy erdemes visszairjam session-re, es atalitsam hogy adatbazisba mentse a dolgokat, vagy ertelmetlen, mert ensem csinalok mast, minthogy update-eket es select-eket kuldok.
Meg ami erdekesnek tunik az a memcached session, de ugy tunik hogy ahoz modult kell instalalni, es nemtudom hogy mennyire szokott az mindenfele webservereken aktivalva lenni, s egyelore nem merek kockaztatni, esetleg ha ezzel kapcsolatos tapasztalaitok vanak, akkor johetnek
-
Briganti
tag
válasz
RedSign #1809 üzenetére
A SESSION -el az a baj, hogy lassu, es ha jol ertettem, akkor nemtudom melyik periodusba de van valami session file lock vagy mi a fene
lenyeg, hogy elindult a generalasi process, es kozben 2 masodpercenkent a generalt file-ok lekerdezese, es a lekerdezesek is addig futtak, amig be nem fejezodott a generalas ... tehat az lett vege hogy megjelent a progressbar, es amikor vege lett az egesznek akkor egybol felfutott 100% -ra ...
ugyhogy amig jobb nem kerul adatbazissal oldottam meg, es az eleg gyorsnak tunik, tehat amugy is volt egy settings tabla, es abba beszurtam egy sort amibe tarolom a generalt fajlok szamat. van 1 fugvenyem amely harom dolgot tud: inicializal, novel, es lekerdez
eddig jonak tunik, kiderul aztan milyen forgalmat general ide nekem
-
Briganti
tag
A helyzet az, hogy ez igy szep es jo lenne, csak egy meglevo scriptet kell modositsak, ami a kovetkezo keppen van felepitve:
Lasd itt:
Adott a Php1, es a Php2. A php1 -n van 5-6 checkbox, amelyek kombinacioja szerint kulombozo fajlokat kell generalni. Tehat a php2 megkapja a bejelolt checkbox-okat, es mindegyik checkbox-nak meghiv egy fuggveny, es mivel obiektum orintaltan van felepitve a rendszer, egy hivas igy nez ki :
$file_generation->_generateIndex(); (a rajzon ez lesz a GenPart1)
Tehat ugymond a fugveny meg egy harmadik file-ba van.
Csinalhatnam azt is hogy szerre hivjam meg a fuggvenyeket, de az megint nem lenne jo, mert a GenPart1, GenPart2, GenPart3 -ban 1 max 3 filet general, es a GenPart4-ben 2-3000 -t ... tehat csak jo lenne egy valtozo amit novelek mind generalt file utan, es amit a Php3-al le tudok kerni, valami ami super-super-super global
Kezdesbol tudom a generalando file-ok szamat, mert a checkbox -ok change esemenyen meghivodik egy php, ami kiszamolja hogy hany file lesz generalva, ez szerintem nem folyasolja be egyaltalan az en kerdesem, csak valasz a "query ... COUNT" -s reszre :d
-
Briganti
tag
válasz
Speeedfire #1804 üzenetére
Olvastam de mar nem emlekszem hogy a nagy meret a feltoltesnel volt gond, vagy az importalasnal, de egy megoldas lehet az is, hogy leszeded az adatbazist, feltoltod egyben es a BigDump nevu script segitsegevel importalod
-
zka67
őstag
válasz
Briganti #1805 üzenetére
Én ezt valahogy úgy csinálnám meg, hogy az első php-ben lekérdezném, hogy összesen hány művelet lesz. (query ... COUNT). Majd indítanék egy timert a legkisebb értékkel. A timer rutinjában ajax-szal megívnám a progress bar képét generáló php programot, aminek így már át tudom adni azokat a paramétereket, amikre szüksége van a progress barhoz és a fájlok egy részének a legenerálásához. Pl. kezdő sorszám, darabszám, összes darab, a progr.bar php-ben pedig ezek alapján ismét lekérdezném az adatokat (query ... LIMIT), és ebben generálnám le először a fájlokat, majd a progress bar képét, amit a végén visszaadok a hívó proginak. Amikor ez megjött, újraindítom a timert ha van még adat.
-
Briganti
tag
Hellosztok,
egy (szamomra) nagyon erdekes dologba akadtam bele, es sehogysem jon az az isteni szikra, hogy rajojjek a megoldasra
Tehat a problemam a kovetkezo: Fajl generalast vegzek php-val, mivel sok adatrol van szo, es sok file-rol, igy jo lenne ha ossze tudnek hozni egy progressbar-t. En egy olyan megoldast gondoltam el, hogy futnak a fugvenyeim, es egy globalis valtozo-ban no egy ertek, az oldalon pedig egy idozitett javascript fugvennyel (es termeszetesen ajax segitsegevl) lekerem ezt az erteket, es az szerint allitom a progressbar-t. Ez igy kepzeletbe nagyon szep es jo, de sehogysem akar osszejonni ... probalkoztam a GLOBALS es _SESSION valtozokkal, de nem mukodtek ... valami olyan nagyon globalis valtozo kellene, mint amelyik ugy mukodik mint a fajlba iras ... az oda bele van irva, es akarmikor lehet olvasni ...
nekem a fajlba iras kicsit amatornek tunik, s plusz en ugy gondolom hogy utkozesek lennenek az olvasassal es irassal
Ha nem ertheto meg egyszer nekifutok a leirasnak, de hatha ennyibol valaki megmondja nekem a tutit
Elore is koszi,
kellemes estet! -
zka67
őstag
válasz
Speeedfire #1802 üzenetére
phpMyAdmin nincs rajta? Azzal le tudod menteni egybe az egészet.
-
Speeedfire
félisten
Üdv!
Nem tud valaki valami tippet/trükköt hogy lehet nagy adatbázist gyorsan feldarabolni? Költözik az oldal és túl nagy az adatbázisa.
-
zka67
őstag
válasz
DeltaPower #1800 üzenetére
Basszameg, pedig kva egyszerű a megoldása, csak gondolkodnom kéne néha
SELECT table2.field3
FROM table1
LEFT JOIN table2 ON table2.id=IF(field1 > 0,field1,field2);
Aktív témák
Hirdetés
- Asus A15 FA506IU 15.6" FHD IPS Ryzen 7 4800H GTX 1660Ti 16GB 512GB magyar vbill gar
- i5-13600KF, RX 9070, DDR5 32GB, 1 TB M.2, Fractal North TG és sok garancia
- Logitech Combo Touch iPad Pro 11" (1., 2. a 3. gen), szürke - UK billentyűzet ipad tok billentyűzet
- újszerű iPad Pro 11" (3. generációs) (2021) M1 chip Wi-Fi 128GB silver ezüst Apple
- szinte új iPhone 16 Pro Max 256GB desert titanium sivatagi titán független Apple 3 év garancia
- BESZÁMÍTÁS! ASROCK H310CM i5 8400 16GB DDR4 256GB SSD 1TB HDD GTX 1060 3GB Rampage SHIVA TT 500W
- BESZÁMÍTÁS! ASUS TUF Z390-PRO GAMING alaplap garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone Ryzen 5 4500 16/32/64GB RAM RTX 3050 6GB GAMER PC termékbeszámítással
- Csere-Beszámítás! Gamer PC Számítógép! R9 3900X / RX 6700XT / 32GB DDR4 / 1TB SSD
- Asus Rog Strix G16
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest