Új hozzászólás Aktív témák
-
cucka
addikt
válasz 8nemesis8 #3297 üzenetére
- PHP fekete könyv
- Notepad++ vagy zend 5.5 . Az újabb zend-ek már eclipse alapúak, ami nekem nagyon nem tetszik, mert nem az én munkamódszeremre vannak kitalálva. Beadandó írásához szerintem a notepad++ is bőven elég.(#3299) Blaise
Egyrészt elég drágának tűnik. Másrészt ilyen szövegektől falra tudnék mászni:Úgy gondoljuk, hogy az Olvasó ideje túl drága ahhoz, hogy új fogalmak bemagolására pazarolja, ezért a kognitív tudományok és a tanuláselmélet legújabb kutatási eredményeinek felhasználásával egy minden érzékszervre ható anyagot állított össze a szerzőpáros.
Namost a programozás az egy száraz tudomány. Van, aki képtelen arra, hogy megtanulja, az nem fogja színes ábrákkal meg egyéb parasztvakítással sem megtanulni. Szóval a leírás alapján nekem nagyon komolytalannak tűnik az egész, 9000 forintért vegyél egy szakkönyvet, ami rendes, alapos tudást ad. (Ha pedig szerinted is szárazak és uncsik a programozásról szóló szakkönyvek és képtelen vagy ilyenekből tanulni, akkor inkább hagyd az egészet a fenébe.)
[ Szerkesztve ]
-
Tele von Zsinór
őstag
-
Sk8erPeter
nagyúr
válasz 8nemesis8 #3378 üzenetére
Hát akkor egyszerűen nem kell jelszó. Próbáld meg anélkül.
Egyébként minek van külön sorban ez: $kapcsolat= mysql_connect();?
---
Én így szoktam csinálni, szerintem jól áttekinthető:$felhasznalo = "Akarki";
$jelszo = "******";
$kapcsolat = mysql_connect("localhost", $felhasznalo, $jelszo);
if (!$kapcsolat)
{
//hibaüzenet...
}
//itt pedig már jöhet az adatbázis kiválasztása:
$adatbazis = "akarmi";
mysql_select_db($adatbazis, $kapcsolat)
or die("Nem sikerült kiválasztani a \"$adatbazis\" adatbázist! <br />Hiba: ". mysql_errno() . "\n\r" .mysql_error()."<br />");[ Szerkesztve ]
Sk8erPeter
-
válasz 8nemesis8 #3378 üzenetére
A mysql_query() második paraméterének nem árt beírni a kapcsolatazonosítót - esetedben $kapcsolat - , mert elvileg így is jó, ahogy van, mert auto az utolsót használja, de azért mégis elegánsabb lenne megadni.
[ Szerkesztve ]
A RIOS rendkívül felhasználóbarát, csak megválogatja a barátait.
-
-
Sk8erPeter
nagyúr
válasz 8nemesis8 #3387 üzenetére
Szóval összefoglalva:
számít az is, hogy maga a fájl kódolása milyen, ezt pl. Notepad++-ban a Formátum menüben tudod megnézni (melyik előtt van a pötty). Ami neked kell, az az "UTF-8 kódolás BOM nélkül", ha nem erre van beállítva, akkor menj az "Átalakítás UTF-8 kódolásra BOM nélkül" menüpontra (így nem kell újraszerkesztened a fájlodat az ékezeteknél...).
Magán az oldalon legyen a headerben a <html> előtt, a MySQL csatlakozás után egy
mysql_query('SET NAMES utf8');
sor, majd a <html><head> után pedig már egy
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
sor.Tételezzük fel, hogy függvénybe írtad a MySQL-csatlakozást, csatlakozas() névvel, akkor a következőképpen nézne ki:
<?php
header('Content-Type: text/html; charset=utf-8');
//függvényeket leíró fájl meghívása
require_once('functions.php');
//MySQL-kapcsolat létrehozása
csatlakozas();
//Adatbázissal történő kommunikáció karakterkódolásának beállítása
mysql_query('SET NAMES utf8');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="hu" lang="hu">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="hu" />
<!-- és a többi... -->
</head>
<body>
<!-- és a többi... -->
</body>
</html>Szerk.: ajánlott olvasmány lehet a következő két cikk:
Karakterkódolási problémák kiküszöbölése
MySQL 5.0: karakterkódolások[ Szerkesztve ]
Sk8erPeter
-
Sk8erPeter
nagyúr
válasz 8nemesis8 #3390 üzenetére
Kell MySQL-tábla (így a legegyszerűbb), ott pedig kezdetnek md5-titkosítással mentsd el a jelszavakat.
Itt van egy leírás az alapokhoz, ebből már el lehet indulni: [link]Ha ezzel már megvagy, akkor esetleg érdemes elolvasni ezt: Biztonságosabb jelszó tárolás.
De kezdetnek bőven elég az előző cikk.Sk8erPeter
-
Sk8erPeter
nagyúr
válasz 8nemesis8 #3395 üzenetére
Egyelőre én is csak md5-tel titkosítottam a jelszavakat, mert én is ezzel kezdtem, azóta nem is változtattam meg. De most komolyan, ki a t×köm akarná pont az én oldalamat feltörni? Egy kutyatenyésztő oldalnak csináltam admin felületet. Azért tudtommal annyira nem egyszerű az md5-öt se feltörni...
Sőt:
"Az MD5 ellenőrző számok az angol ábc betűiből (26) és számokból (10) állnak. Ez ugye 32 felvehető érték, 32 karakternél (32 karakteresek az MD5 ellenőrző számok). Tehát összesen 3632 [kb. 1,46 * 1048] lehetséges MD5 ellenőrző szám van."
Biztos pont az én oldalamnál fogják eltalálni az egyik lehetséges számot... Szvsz nem kell olyan nagyon parázni az md5-titkosításnál, csak akkor, ha már sok-sok felhasználó jelszavát tárolod. Én összesen kettőét.Szerk.: ja, és ez volt a forrás az idézethez.
[ Szerkesztve ]
Sk8erPeter
-
Sk8erPeter
nagyúr
válasz 8nemesis8 #3421 üzenetére
Szerencsére a CSS elég egyszerű, gyorsan elsajátítható nyelv. És ezzel együtt nagyon komplex.
"A következő lépés képek beszúrása a videotékába. Ha ehhez is van hasonlóan jó kis linked akkor szívesen fogadom."
Most itt konkrétan mire gondolsz? Képeket beszúrni többféleképpen is lehet, most az a kérdés, hogy pl. adatbázisból hogy lehet kinyerni az adatokat (ha pl. ott tárolod a képek linkjét)? Kicsit egyértelműbben írd le, mit szeretnél. Lehet, hogy akkor nem is kell külön link, itt is megkapod a választ. Meg persze az is tisztázandó, hogy milyen módon szeretnéd berakosgatni a képeket.
Én korábban úgy szerettem volna betenni a képeket, hogy mindig van egy nagy kép, alatta pedig kisképek, majd egy leírás, és utána pontosan ugyanígy a következő elemnél.
Ehhez cucka nyújtott nagy segítséget (nélküle nem jutott volna eszembe a külön tömbbe rendezés egyébként igen kézenfekvő gondolata ): [link]Sk8erPeter
-
Sk8erPeter
nagyúr
válasz 8nemesis8 #3437 üzenetére
Hogyan tárolsz képet az adatbázisban? Valószínűleg azért ajánlják mindenhol a link tárolását az adatbázisban, mert csak azt lehet megcsinálni. (ha valaki megcsinálná azt, hogy mondjuk egy jpeg képnek a szerkesztőben látható tartalmát tárolná el adatbázisban, majd úgy hívná elő, hogy abból jpeg-kép szülessen, akkor hááát igencsak ki lehetne nevetni )
Ott adatot tárolsz, nem konkrétan fájlokat, majd ezeket előhívogatod, ahol szükséged van rá.
A dolgod csak annyi, hogy oldd meg, hogy képfeltöltéskor a kép elérési útja automatikusan pontosan úgy kerüljön be az adatbázisba, ahogy az a tárhelyeden megtalálható. Akár relatív, akár abszolút hivatkozást is betehetsz. Aztán az oldalon a neked megfelelő módon hívod elő, ha több kép elérési útja is kell, akkor mondjuk ciklussal... de eleve a MySQL utasítást is lehet úgy finomítgatni, hogy csak azoknak a képeknek az adatait tudd előhívni, amikre épp szükséged van.
Ha konkretizálnád, mit is szeretnél, úgy könnyebb lenne segítséget nyújtani.[ Szerkesztve ]
Sk8erPeter
-
cucka
addikt
válasz 8nemesis8 #3441 üzenetére
Nevezzük a filmek táblát film-nek, a kölcsönzés táblát kolcsonzes-nek. A kölcsönzésben tároljuk el egy mezőben, hogy a kölcsönzés lejárt-e. (Ez azt jelenti, hogy a filmet visszahozták.)
Ekkor a következő query lesz jó:
select * from film
where not exists
(select * from kolcsonzes
where kolcsonzes.lejart=0 and kolcsonzes.film_id=film.id
)A lejárás feltételét úgy tárolod, ahogy akarod, nyilván a rá vonatkozó feltételt eszerint kell megadni, itt a példa kedvéért a legegyszerűbb megoldást választottam.
[ Szerkesztve ]
-
Sk8erPeter
nagyúr
válasz 8nemesis8 #3441 üzenetére
Most csak első kósza ötlet, ami eszembe jutott, persze ennél lehetnek elegánsabb megoldások is, pl. csinálsz egy külön oszlopot "allapot" névvel, és ott mindig változtatod az állapotot, attól függően, hogy épp kölcsönözhető vagy sem. Ez szerintem így nagyon egyszerű. És amikor pedig lekérdezést hajtasz végre, akkor valahogy így:
SELECT * FROM videotekatabla WHERE allapot = 'kolcsonozheto';___________
Szerk.:
(#3442) cucka: rendben, köszi az eddigi válaszokat is, tényleg utánaolvasok, mindenesetre elég sokat segítettél.
(#3443): hmm, akkor sorry. Valszeg le vagyok maradva.
"Én már megcsináltam párszor"
És milyen célból? Nekem elsőre kicsit feleslegesen bonyolultnak tűnik, persze biztos valamilyen szempont nem jutott még eszembe. Pl. az, hogy mondjuk egy fájlt nem akarsz tárolni, hanem csak a tartalmát."Egy file tartalma is adat." Jó, ezt valóban félreérthetően írtam, my fault.
[ Szerkesztve ]
Sk8erPeter
-
-
Tele von Zsinór
őstag
válasz 8nemesis8 #3446 üzenetére
Inkább enum-nak tudnám elképzelni, ha már úgyis mysql-el dolgozol, és akkor nem csak kölcsönözhető/nem kölcsönözhető, hanem más állapotokat is le tud írni.
Amikor visszahozzák, beállítod, hogy kölcsönözhető, hasonlóan kivételkor azt, hogy nem.
Mysql-ben nincs bool, tinyint(1)-et szokás használni erre a célra. -
Sk8erPeter
nagyúr
válasz 8nemesis8 #3447 üzenetére
Persze, erre való a date() függvény.
Pl. meg lehet csinálni így:$ev = date("Y");
$honap = date("m");
$nap = date("d");
$nap_neve = date("l");
switch ($nap_neve) //nap nevének átalakítása magyarra
{
case 'Monday' : $nap_neve = 'hétfő'; break;
case 'Tuesday' : $nap_neve = 'kedd'; break;
case 'Wednesday': $nap_neve = 'szerda'; break;
case 'Thursday' : $nap_neve = 'csütörtök'; break;
case 'Friday' : $nap_neve = 'péntek'; break;
case 'Saturday' : $nap_neve = 'szombat'; break;
case 'Sunday' : $nap_neve = 'vasárnap'; break;
default: break;
}
$ora = date("H");
$perc = date("i");
//és a végeredmény:
$datum = "$ev.$honap.$nap. ($nap_neve), $ora:$perc";Ezt beteheted mondjuk egy "datumkeszito" nevű függvénybe, és akkor mindig csak ezt kell meghívogatni. Pl. térjen vissza a $datum értékével.
Sk8erPeter
-
Sk8erPeter
nagyúr
válasz 8nemesis8 #3458 üzenetére
Nem, miért lenne butaság. De most pontosan nem tudom, mire gondolsz, ha visszahozták a videót, akkor gondolom mindenképp nyom az admin valami gombot, ami igazolja, hogy oké, visszahozva, ekkor lefuthatna többek közt a dátumkészítő függvény, és az eredményt pedig betehetnéd a MySQL-tábla megfelelő oszlopába.
Sk8erPeter
-
Sk8erPeter
nagyúr
válasz 8nemesis8 #3470 üzenetére
Most nem nagyon értem a kavarodás okát. Ha van mondjuk egy olyan oszlop, hogy "kolcsonozheto", és azon belül igaz-hamis feltétel jelzi, hogy kölcsönözhető-e, és ez ha igen, akkor 1, ha nem, akkor 0, ebben az esetben nyilván ha visszahozták a videót, akkor ez az állapot 1-esre változik, hiszen akkor már kölcsönözhető. Ha viszont kivették, akkor 0 az állapot, mivel nem kölcsönözhető. Ennek az állapotát nyilván jóváhagyja az, aki felel azért, hogy visszahozták-e az adott videót. Ha pl. rányom, hogy visszahozták, akkor automatikusan 1-esre változik a mező, vagy ha rányom, hogy épp kivették, akkor 0-ra, stb.
________________
(#3469) cucka: köszi megint. Látom elég komoly projectekben is részt vettél.
Sk8erPeter
-
cucka
addikt
válasz 8nemesis8 #3472 üzenetére
Igen, a kölcsönzés táblában az összes film összes kölcsönzése szerepel, tehát egy filmhez több kölcsönzés is tartozhat, viszont azok közül legfeljebb egy olyan van, ami nyitott. Ennek a feltételnek a teljesülését a php programodnak kell biztosítania, például úgy, hogy ha egy filmre létezik nyitott státuszú kölcsönzés, akkor nem vihetsz fel újabbat addig, amíg le nem zártad az előzőt.
A #3444-ben írt példa lekérdezést direkt úgy írtam, hogy ezt a fenti dolgot tudja: a film kölcsönözhetőségét az dönti el, hogy létezik-e rá nyitott kölcsönzés vagy sem.Ha egy filmből több példányod van, akkor is meg lehet oldani egyszerűen. Például a film táblában ekkor lesz egy példányszám meződ, a film pedig akkor kölcsönözhető, ha a filmre vonatkozó nyitott kölcsönzések száma kisebb, mint a filmhez tartozó példányszám.
-
PazsitZ
addikt
-
PazsitZ
addikt
válasz 8nemesis8 #4407 üzenetére
print van a header előtt (plusz akkor html kód is). Ennyire egyszerű a dolog.
Pár hsz-el ezelőtt pont szó volt a dologról: [link]Tehát vagy az ob_ fgv-eket hesználhatod, vagy építsd fel a kimentet egy változóban és a végén egy if-el vagy header küldesz, vagy tartalmat íratsz ki, vagy mindkettőt, de ebben a sorrendben.
[ Szerkesztve ]
- http://pazsitz.hu -
-
Tele von Zsinór
őstag
-
cucka
addikt
válasz 8nemesis8 #4425 üzenetére
A header-en kívül nincs valami amivel lehet frissíteni az oldalt!?
Nincs. Igazából a header-el sem tudod frissíteni az oldalt.
A folyamat úgy működik, hogy ha a felhasználó lekér egy oldalt, akkor a kérés eljut a szerverhez, a szerver pedig valamit csinál, majd visszaküld a felhasználónak valamilyen adatot http protokollon keresztül.Egy php oldal esetén a szerveren az elküldött adat a php kód kimenete lesz. A header() függvénnyel a http adatcsomagok fejlécét tudod módosítani, ezért is hívják header-nek . A szerver oldalon a http fejléc akkor jön létre, amikor a script-ed először kiír valamit a kimenetre (ugyanis a http fejléc mindig meg kell előzze a http adatokat), ezért van az, hogy az első kiírás után a header-t már nem lehet használni. (És ugyanezért nem lehet használni a setcookie-t sem azután, hogy kiírtál valamit, mert a sütikkel kapcsolatos teendők is a http fejlécben találhatók. És ezért nem lehet általában session-t indítani kiírás után, mert az szintén egy cookie létrehozását jelenti)
-
cucka
addikt
válasz 8nemesis8 #4427 üzenetére
Általában véve a php kódot úgy kell megírni, hogy először van az alkalmazáslogika (bármilyen művelet, amit a script-nek el kell végezni) és csak ezután jön a kiírás rész, amikor legyártod a html-t. Ez utóbbinál már semmiféle alkalmazáslogika nincs.
Ha valamilyen sablon rendszert használsz (pl. smarty), akkor gyakorlatilag nincs is más lehetőséged, rá vagy kényszerítve a fent említett két folyamat különválasztására. -
Gyuri16
senior tag
válasz 8nemesis8 #4546 üzenetére
maxlifetime erre valo. php.iniben lehet allitani:
session.gc_maxlifetimeha nem tudod a php.init valtoztatni, akkor elteheted a sessionbe az utolso lekeres idejet, es minden inicialasnal megnezed, hogy az azota eltelt ido tobb e mint a timeout, ha igen akkor eldobod a kapcsolatot
[ Szerkesztve ]
Nem vagyok egoista, csak uborkagyalu!
-
Coyot
őstag
válasz 8nemesis8 #4588 üzenetére
google első találat, és szépen le is rajzolja hogy csinálj sheduled jobot
http://www.oracle.com/technology/obe/obe10gdb/manage/scheduler/schuser.htmMá' nem
-
zka67
őstag
válasz 8nemesis8 #4590 üzenetére
addig minek? eláll az ott, nem? csak akkor kell eldöntened, ha hozzá akar férni valaki ahhoz a tételhez. ha nagyobb adatbázisban gondolkodsz, csak feleslegesen terheled a szervert minden éjfélkor, esetlegesen több tíz- vagy százezer tétel átnézésével.
ezt én úgy csinálnám, hogy el sem tárolnám, hogy lejárt-e, hanem minden hozzáféréskor ellenőrizném: if ((pontosidő >= lejáratidő) && (aktuálisár >= minimálár)) { lejárt; } else {nemjártle; }
[ Szerkesztve ]
Új hozzászólás Aktív témák
- Crypto Trade
- PlayStation 5
- EAFC 24
- Milyen routert?
- Súlyos adatvédelmi botrányba kerülhet a ChatGPT az EU-ban
- Házimozi haladó szinten
- Suzuki topik
- Építő/felújító topik
- Modern monitorokra köthető 3dfx Voodoo kártya a fészerből
- Egészen nagy teljesítményspektrumon fedné le a mobil piacot az AMD
- További aktív témák...