Új hozzászólás Aktív témák
-
1ed
csendes tag
Szia!
Gomb helyett használj linket:
<a href="update.php?id=<?php echo $row['id'] ?>">Modosít</a>
Ez ugyanazon a cikluson belül van mint, ami a táblázat sorait kiírja és a $row['id'] az adott sorban található termékhez tartozó elsődleges kulcs.
Az update.php lekérdezi az átadott $_GET['id'] alapján az adott rekordot az adatbázisból, és az adatokkal létrehozza a módosításhoz való fomot, mondjuk így:
<form ...>
<label for="mezo1">Mezo1: </label><input id="mezo1" name="mezo1" value="<?php echo $data['mezo1'] ?>" />
... -
egyjotakaro2
tag
Sziasztok.Megint én vagyok
Nem tudtok nekem egy egyszerű regisztrációt adni, ajánlani?
Csak egy Felhasználónév,Jelszó-Jelszó mégegyszer-email. Amikor beregisztrált, aktiválni keljen, de azt csak én tudjam úgy mond kézzel aktiválni pl be írom az adatbázisba, hogy az aktiala mezőbe egy 1-est és aztán betud lépniSzóval remélem kb érthető
Üdv.
-
radmin
csendes tag
Azt tudom, hogy mindenképpen kell az elsődleges kulcs, hogy be lehessen azonosítani a sort.
Ráadásul nem hozhatok létre minden sorban egy vadonatúj formot, mert automatikusan generálódik le a sor, s a sor végén a gomb is, mivel a táblázatba azok a rekordok vannak, amiket lekérdeztem az adatbázisból.PL: Lekérdezés után generálódik egy 5 oszlopos, 5 soros táblázat, tele rekordokkal, s az ötödik oszlopban kapnak helyet a "módosít" gombok.
kb így lehetne elképzelni vizuálisan a tábicut:
termék1 mező1 mező2 mező3 Módosít
termék2 mező1 mező2 mező3 Módosít
termék3 mező1 mező2 mező3 Módosít
termék4 mező1 mező2 mező3 Módosít
termék5 mező1 mező2 mező3 Módosít(a termék oszlop állandó, a mező1, mező2, mező3 viszont változik UPDATE hatására)
Hogyan tudom felhomályosítani az első sor végén dekkoló gombocskámat, hogy ő a termék1-hez tartozik, s nem a termék3-hoz?
-
válasz
tkazmer #4395 üzenetére
Bocs, hogy belekontárkodom, annyival azért kiegészíteném, hogy ezeknél a formoknál figyelni kell arra is, hogy az adott sor egyértelműen azonosítható legyen. Tehát ha mondjuk nem tudjuk az adott sor elsődleges kulcsát, és csak úgy elküldjük, legyen post, akkor mi alapján tudjuk, hogy melyik sorra is kell kiadni azt a bizonyos update utasítást? Tehát fontos, hogy a rekord elsődleges kulcsát is elküldd a formban!
-
radmin
csendes tag
Sziasztok!
Ismételten segítséget szeretnék kérni tőletek!
Csináltam egy lekérdezést, s annak eredményét egy táblázatban jelenítem meg. Tettem minden sor végére még egy cellát, amiben van egy módosít gomb.
Az első oszlopban vannak azok az adatok, amiket nem módosítok, tehát az fix marad. Legyen mondjuk a példa kedvéért 'Termék' az oszlop fejlévében, s az alatt bizonyos termékek.PHP-ben hogyan tudom megcsinálni, hogy csak annak a sornak az adatait módosítsam, amelyik sor végén a módosít gombra kattintottam?
Köszönettel:
-
Sk8erPeter
nagyúr
Ez elég furcsa, lehet, hogy ott, ahol először próbálkoztál, alapértelmezettnek vette az ob_start()-ot...
Ez a kimeneti bufferelés viszont nagyon rossz programozói gyakorlathoz vezethet, és nehezebbé teszi az átláthatóságot, ráadásul bőven megoldható enélkül is mindenféle feladat.
cucka itt korábban leírta erről a véleményét: [link], szerintem igaza van. -
VM.Zoli
csendes tag
Sziasztok!
A poblémám a következő. Adva van egy ötlet, egy szolgáltatás. Nincs pénzünk a fejlesztésre.
A./
Az érdekelne hol lehet meghirdetni, hogy fejlesztőt keresek az ötlet szoftveres hátterének elkészítésére, cserében az új cégben való részedés fejében.
B./ verzió:
Kint tőlünk nyugatra léteznek olyan fórumok, ahol a jó ötletekre lehet keresni vállalkozókat akik esetleg hajlandók finanszírozni. Ilyen itt kis országunkban nincsen? -
BM#2
csendes tag
Kezdek megőrülni, kérlek segítsetek!
Meglett a domain nevünk és átköltöztettem az oldalt, most már a végleges helyére.
Ami eddig két szerveren is elfutott, az itt most nem megy.
Van amit sikerült megoldanom, de ezt nem:
Hibaüzenet a szerverről:
Warning: Cannot modify header information - headers already sent by (output started at/mnt/storage/virtual/tutiosztaly.hu/htdocs/kijelentkezes.php:7) in/mnt/storage/virtual/tutiosztaly.hu/htdocs/kijelentkezes.php on line 11Mi baja van a "header" utasítással? Több helyen is használom és egyik sem működik.
A "session_start()"-al is baja volt, de azt megoldottam, mindenütt előre raktam és jó, de ezzel mit tegyek?
Köszi!
-
Sk8erPeter
nagyúr
include()-old a kívánt oldalakat a megfelelő helyen (vagy létezik még az include_ once(), ill. a require() és require_once() függvény is - a _once végződésűek esetén annyi a különbség az anélküliektől, hogy ha a kódban esetleg több helyen is include-oltad már valamilyen oknál fogva az adott fájlt, akkor ez az első include-olás után figyelmen kívül hagyja a parancsot; a require és require_once esetén pedig megszakad a programfutás, ha nem sikerült include-olni a fájlt [pl. nem létezik a megadott helyen]).
A frame-ek használata pedig tényleg kerülendő, sokat lehet szívni vele, és nagyon jól meg lehet lenni frame-ek nélkül is. -
radmin
csendes tag
Köszi a segítséget, már belapátolja az elemeket az adatbázisba rendesen.
Egyik gondom megoldódott, de azért még akad.
A HTML-ben DIV-ek használatával meg tudok egy oldalon jeleníteni két különböző lapot, mint frame esetében?
-
radmin
csendes tag
Ha jól gondolom, akkor LINUX-ot használsz, s terminálból csatlakozol a freeweb szerveréhez.
Az ellenőrzéshez javasolnék (a terminálnál maradva) egy mc-t, s abban kapcsolódni ftp-n, s meg tudod nézni, hogy valóban van e állomány a könyvtárban, vagy nincs.
Grafikus felületen a gftp kliens is alkalmas erre a célra. Amelyik neked jobban bejön, használd azt.
-
Tele von Zsinór
őstag
Ahogy te írtad, az "Array" az elvárt működés - mert ez a kimenete az automatikus stringgé alakításnak. Ugyanezért lesz hibás a mysql_real_escape_string() hívás - tömböt nem tud átalakítani.
Függően attól, hogy akarod letárolni adatbázisban, használhatod, amit itt fentebb írtak, ellenben ha sima szövegként le akarod tárolni az értékeket, így a legegyszerűbb:
$sql="INSERT INTO `tablanev` (termekek) VALUES ('" . mysql_real_escape_string(implode(", ", $_POST[termek1])) . "')"; -
radmin
csendes tag
Saját webszerveren törölted a cuccot, vagy egy ingyenes webszerveren.
Ha saját, akkor könnyen lehet rajta segíteni, ha pedig egy ingyenes szolgáltató, akkor izgalmasabb a dolog.
Az ingyeneseknél előfordulhat (hozzáteszem, nem mindegyik esetében), hogy ha törölsz könyvtárat, vagy fájlt, mondjuk valamilyen FTP kliens segítségével, akkor a könyvtárat ott hagyja látszólag. Viszont ha kilépsz, majd újra belépsz, akkor már elméletileg nincs ott a könyvtár sem.
Nálam pont ilyen esetek fordultak elő, s leginkább az extra esetében.
-
BM#2
csendes tag
Sziasztok!
Az előbb próbálgattam egy kész PHP chat scriptet. Végül töröltem, azaz csak akartam, mert bár a mappa tartalmát sikerült törölnöm, a mappa ott maradt. Mitől van ez? Az attribútuma 777 amúgy.
Valószínűleg nagyon amatőr a kérdés, de hát én az vagyok.
Amúgy kellemes húsvétot mindenkinek!
-
Azért array kerül az adatbázisodba, mert multiple select-et valósítassz meg, ahol ugye több elem is lehet. Ezt úgy tudod eltárolni az adatbázisban, hogy a $_POST[termek1]-t bejárod egy foreach ciklussal, és a tömb elemeit tárolod el az adatbázisba.
pl.
foreach($_POST[termek] as $row){
$query = mysql_query("insert into tabla (rekord) values($row));
} -
radmin
csendes tag
válasz
Tele von Zsinór #4372 üzenetére
Nem checkbox-ot használok, hanem select -et multiple opcióval, így több elemet ki lehet választani egyszerre.
Az űrlapelem nevének megadtam a termek1[] nevet, de az INSERT INTO -ban elhelyezett $_POST[termek1] csupán egy Arry szót tesz az adatbázisba.
Kipróbáltam a mysql_real_escape_string() -et, de erre egy sytax errort dob. Próbáltam rájönni, hol a hiba, s javítgatni is, de az eredmény érdekesebbnél érdekesebb lett.
$sql="INSERT INTO 'tablanev' (termekek) VALUES ('" . mysql_real_escape_string($_POST[termek1]) . "')";
Nem kell még valami a mysql_real_escape_string($_POST[termek1]) -hez?
Mert sajna úgy nem szeret működni, ahogy a fentebb említett szkript kinéz teljes formában. -
Tele von Zsinór
őstag
$sql="INSERT INTO 'tablanev' (termekek) VALUES ('$_POST[termek1]')";
Ez így nagyon rossz. A $_POST tömb elemei a felhasználótól jönnek, ergo megbízhatatlanok. Olvass utána az SQL injection nevű támadásnak.
A legegyszerűbb védekezés ellene az, ha nem közvetlenül adod át a mysqlnek a kapott értékeket, hanem escapeled, például így:$sql="INSERT INTO 'tablanev' (termekek) VALUES ('" . mysql_real_escape_string($_POST[termek1]) . "')";
-
Tele von Zsinór
őstag
Hogy érted? Checkboxok közül melyik van kijelölve?
A böngésző csak azokat küldi el, amik be voltak pipálva, így már egyszerűbb a dolgod. Ha pedig [] jeleket használsz a nevében, akkor a php kódban tömbként tudod használni őket. Például:<input type="checkbox" name="fagyi[]" value="vanilia" />
<input type="checkbox" name="fagyi[]" value="csoki" />
<input type="checkbox" name="fagyi[]" value="eper" />Ez php oldalon a $_POST["fagyi"] változóval elérhető, és egy tömb lesz, ha legalább egy be volt pipálva. Ha egy sem, akkor a $_POST-nak nem lesz fagyi kulcsú értéke.
-
radmin
csendes tag
válasz
Orb1337 #4369 üzenetére
A DIV-ek a CSS esetében nagyon praktikusak. Ennyit tudok, de még nem igazán használtam. A frame jelenleg csak mentőövként szolgált, mert gyorsan kellett valami, s ez jutott eszembe, amit hirtelen össze is bírtam pakolni.
Azt nem tudod véletlenül, hogy miként lehet egy űrlapelemből kinyerni minden olyan elemet, ami ki van jelölve? Vagy esetleg miként lehet megvizsgálni, hogy mi van kijelölve. Mert ha sikerül kideríteni, hogy mi van kijelölve, akkor nem sokból tart átadni SQL-nek.
-
radmin
csendes tag
válasz
Orb1337 #4367 üzenetére
A form actiont a formot tartalmazó dokumentumra módosítod, ebben az esetben itt kell megoldanod az adatbázisba írást:
if (!isset($_POST['submit'])) //ha megnyomja a gombot
{
//ide jöhet a beolvasás
}Ha jól értelmezem, akkor abban a fájlban oldjam meg az adatbázisba történő feltöltést, mint amiben az űrlap is szerepel.
if (!isset($_POST['submit'])) //ha megnyomja a gombot
{
//ha minden igaz, akkor ide jön az SQL szkript
}Eddig rendben is van.
Viszont ezzel nem tölti újra az egész oldalt frémestül, mindenestül. -
Orb1337
tag
Azt meg lehet valahogy oldani, hogy amikor rákattintok a Küldés gombra, akkor a felső részen ne a form action-nél megadott fájlt hívja meg, hanem töltse be újra az egész oldalt, de nem árt, ha az adatokat is bepréseli az adatbázisba.
A form actiont a formot tartalmazó dokumentumra módosítod, ebben az esetben itt kell megoldanod az adatbázisba írást:
if (!isset($_POST['submit'])) //ha megnyomja a gombot
{
//ide jöhet a beolvasás
} -
GrandeP
addikt
Hali!
Én egy olyan PHP Scriptet keresek... ami a következőt tudja...
Kilistázza a fájlokat , képekről thumbot csinál... van backend, ahol tudom menedzselni.. tehát h ne kelljen ftp-zni...
Ellenben nem kell beregisztrálni egy kép feltöltéséhez..
dirlist 0.3 nem érdekel...
Minden más igen...
Jah és nem ártana ha normális kinézete lenne... tehát ne ilye windows 3.1 stilúsú.
Köszönöm előre is.
-
radmin
csendes tag
Sziasztok!
Nemrég kezdtem el a PHP nyelv tanulását, s ennek megfelelően akadnak problémáim.
Létrehoztam egy lapot, s frame segítségével kettéosztottam, ráadásul vízszintesen.
A felső részben figyel egy űrlap, az alsó részben pedig kapásból a lekérdezés jelenik meg.
Ugyanis az űrlap jótékonyan adatbázisba dobálja a kapott adatokat.A gombhoz ezt a szkriptet használtam:
<input type='submit' value='Küldés' />
Azt meg lehet valahogy oldani, hogy amikor rákattintok a Küldés gombra, akkor a felső részen ne a form action-nél megadott fájlt hívja meg, hanem töltse be újra az egész oldalt, de nem árt, ha az adatokat is bepréseli az adatbázisba.
Vagy esetleg van más megoldás arra, hogy egy lapon jelen meg az űrlap, illetve a lekérdezés?
Van még egy problémám az űrlappal, méghozzá a következő:
Van egy több elemt kiválasztani engedélyező űrlap elemem, amiben kijelölök több elemet, s elküldöm az adatbázis felé. A dolog működik, csak azzal az aprósággal, hogy a kijelölt elemek közül csak az utolsót emeli be az adatbázisba.
Miként lehet megoldani, hogy minden olyan elem bekerüljön az adatbázisba, ami ki van jelölve, s ne külön sorokba, hanem egyetlen cellába?
A táblák létrehozásánál figyeltem az egyes mezőknél történő attribútumok megfelelő megadására, így a lentebb említett mezőnél (termek) a szükségesnél magasabb karakterszámot engedélyeztem, hogy biztosan beleférjen a cellába a szükséges adatmennyiség.Csak azt a szkriptet írtam ide, ami erre a problémára hivatkozik.
<form action='futtat.php' method='POST'>
<select size='5' name='termek1' multiple>
<option value='valami1'>valami1</option>
<option value='valami2'>valami2</option>
<option value='valami3'>valami3</option>
<option value='valami4'>valami4</option>
<option value='valami5'>valami5</option>
<option value='valami6'>valami6</option>
<option value='valami7'>valami7</option>
<option value='valami8'>valami8</option>
</select>
</form>A futtat.php-ban pedig a következő szkript hajtja végre a műveletet:
$sql="INSERT INTO 'tablanev' (termekek) VALUES ('$_POST[termek1]')";
if (mysql_query($sql, $kapcsolat)) {
echo "Adat rögzítve";
}
else {
echo 'HIBA' .mysql_error();
}A segítséget előre is köszönöm!
Üdv:
radmin -
Gyuri16
senior tag
PHP csak azokat az adatokat kapja meg, amit a bongeszo elkuld neki a http requestben, a felbontas nincs koztuk. viszont egy javascripttel megtudhatod a felbontast, es ezt elkuldheted a kododnak pl cookieban, kb igy:
php kodban megnezed be van e allitva a cookie, ha igen, akkor ott a felbontas, ha nem akkor a kodba raksz egy javascriptet ami megtudja a felbontast, azt elrakja cookieba es frissiti az oldaltvagy csinalhatod ajaxszal is, akkor nem kell frissiteni az oldalt
-
Frigo
őstag
Valahogy le lehet PHP-vel kérni a böngészőben használt felbontást hasonlóan mint Javascriptnél ?
-
Sk8erPeter
nagyúr
válasz
Tele von Zsinór #4357 üzenetére
Értem, thanx! Ilyen módon mondjuk tényleg egy biztonsági rést jelenthet.
-
BM#2
csendes tag
Sziasztok!
Az alábbi prograramrésztől azt vártam, hogy kiír nekem 10 sort 1 másodperces késleltetéssel. Ehhez képest egyszerre írja ki az egészet, amikor letelt az összes sor kiírásának az ideje.
Hogyan lehet azt megcsinálni, hogy kiírjon egy sort, majd várjon a beállított ideig, azután kiírja a következőt stb?
<?php
for ($i = 0; $i < 10; $i++)
{
print $i.".sor<BR>";
sleep(1);
}
?>Köszi!
-
Tele von Zsinór
őstag
válasz
Sk8erPeter #4356 üzenetére
Tiltott sütik esetén get paraméterben küldi a sessionidt, automatikusan hozzárakva a, form, stb. tagokhoz (szintén php.ini-ben állítható). Régen alapból engedélyezve volt, nem tudom, frissebb verziókban ez változott-e.
-
Sk8erPeter
nagyúr
Nem tudom, lehet, hogy félreértettem, de az előbbi esetben most nem arról volt szó, hogy mondjuk egy cím mögé írt $_GET azonosítót elfogadva ellenőrizgetjük, hogy adott felhasználó belépett-e?
Azért az, hogy a felhasználónál tároljuk a session erejéig, talán akkor is kicsit megbízhatóbbnak tűnik, mintha bárhonnan hozzáférnek egy azonosítóhoz egy ilyen kis query stringgel...(#4351) Tele von Zsinór: ennek mi a lényegi funkciója?
-
cucka
addikt
válasz
Sk8erPeter #4350 üzenetére
Hát ki az az állat, aki URL-ben vagy POST-ban elküldött SID alapján elfogad egy belépési kísérletet?
Mert ugye a felhasználónál cookie-ban tárolt SID az sokkal megbízhatóbb adat.. -
egyjotakaro2
tag
Sziasztok, avagy jó estét
Lenne egy láma kérdésem:
Ha van egy oldalmotorom, és nincs sql-fájl akkor mit csináljak? -
1ed
csendes tag
válasz
plaschil #4352 üzenetére
Szia!
Itt egy jegyzet amiből az alapok megtanulhatóak: http://nagygusztav.hu/web-programozas-07 193-oldaltól. (200 oldal: kiírás táblázatba)
Ha pedig a fv-ekől kell infó akkor: http://hu.php.net/manual/en/book.mysql.php -
plaschil
aktív tag
Sziasztok!
Abszolút kezdő vagyok, kell egy beadandót csinálnom. Adott egy adatbázis amit csináltam több táblával, feltöltve adatokkal... és most php-t kellene használnom hogy pl. töröljek belőle vagy módosítsam. De hogyan, istenem semmit nem mondtak órán. Feltettem egy wamp szervert, annyit el tudok érni, hogy ki írok valami hülyeséget.
<html>
<head>
<title>Hello World</title>
</head>
<body>
<?php
echo 'Hello World';
?>
</body>
</html>De hogy az úristenbe kapcsolódok az adatbázishoz, azt fizikailag hová kell tennem? A *.php file-ba csak a scriptnek kell lennie, nem?
-
Tele von Zsinór
őstag
válasz
Sk8erPeter #4350 üzenetére
Mindenki, akinél a use_trans_sid engedélyezve van a php.ini-ben.
-
Sk8erPeter
nagyúr
válasz
Tele von Zsinór #4349 üzenetére
No de itt azzal kezdi, hogy "Most session fixation attacks are web based, and most rely on session identifiers being accepted from URLs (query string) or POST data."
Hát ki az az állat, aki URL-ben vagy POST-ban elküldött SID alapján elfogad egy belépési kísérletet? -
Tele von Zsinór
őstag
válasz
Sk8erPeter #4348 üzenetére
Van egy olyan támadás, hogy session fixation, a be- és kilépéskori sessionid újragenerálás ez ellen egy hatékony védekezés.
-
BM#2
csendes tag
Hú, ezzel megszenvedtem rendesen!
Végre sikerült, a session-t alkalmaztam, most minden jól működik.Egyre tisztább kezd lenni a dolog, köszi a linkeket és a leírást is, most picit pihenek, azután holnap folytatom.
ui.:Tuti jövök még!
-
1ed
csendes tag
A cookie-ban tárolt információ a HTTP kérések fejlécében utazik, ezért a rajtuk végzett módosítások mindig csak a következő HTTP kérés során jutnak érvényre. Kétféle ilyen fejléc van:
Set-Cookie: NAME=VALUE; expires=DATE; path=PATH; domain=DOMAIN_NAME; secure
illetve
Cookie: NAME1=OPAQUE_STRING1; NAME2=OPAQUE_STRING2 ...
Az előbbit a szerver küldheti a böngészőnek, ha szeretne beállítani egy sütit, az utóbbit pedig a böngésző küldi a szervernek, ha az adott domainhez tartozik valamilyen süti.
Kétféle süti létezik:
- munkamenet (session): ez a böngésző bezárásával törődik (kivéve ha úgy zárjuk be a, hogy a létező lapok újra megnyíljanak)
- tartós (permanent/persistent): egy adott érvényességi idegi létezik (tehát a böngésző bezárása után is megmarad)
A PHP-ban a setcookie fv-el lehet egy sütit beállítani, a $_COOKIE nevű szuperglobális több segítségével pedig a már létezők értékét elérni. Itt van egy példa, ami talán segíthet megérteni.
A felhasználókezeléshez azonban session-t szoktak használni. Ilyenkor (alapbeállítás szerint) a session_start(); fv. hívás hatására létrejön egy "PHPSESSID" nevű session cookie, és a későbbikben a PHP ez alapján azonosítja a klienst és állítja elő a hozzá tartozá $_SESSION tömböt. A $_SESSION tömb adatai viszont már nem a kliens gépen hanem a szerveren tárolódnak (így egy kicsit biztonságosabb). Szóval ha felhasználókat szeretnél kezelni, akkor ezt használd. (A belépés és kilépés után ne felejtsd el újrageneráltatni a sessionid-t!) -
BM#2
csendes tag
válasz
Sk8erPeter #4343 üzenetére
Éppen erről olvasgattam és most akartam megkérdezni tőletek, hogy jó lenne-e ez nekem.
Nem akartam mégegyszer zsákutcába kerülni, de már meg is erősítettél, hogy jó az irány, köszönöm!
Miért IE? Nem is tudom, talán, ha ezen elfut, amit írok akkor mindenen...Hálásan köszi a segítséget, remélem most összejön!
-
Sk8erPeter
nagyúr
Miért nem használsz inkább $_SESSION változókat, ha nem szeretnéd, hogy a felhasználó gépén tárolódjanak az adatok? A session időtartamára is igaz egy-két dolog, ezt már cucka korábban leírta, én nem írom még egyszer
: [link]
Megszüntetni hasonlóan a többi változóhoz az unset() függvénnyel lehet.
Miért ragaszkodsz ennyire az Internet Explorerhez?
A konkrét kérdéseddel kapcsolatban a PHP-kódod szempontjából nem igazán számít, melyik böngészőt használod...
-
BM#2
csendes tag
Most úgy látom, hogy ha létrehozok egy cookie-t, mondjuk egy óra érvényességgel, de azt előbb törlöm, akkor az IE. bezárása után el is tűnik. Addig azonban ott van és kiolvasható az értéke. Nem tudom ez így rendben van-e?
Próbáltam az unset utasítást is, de akkor is ugyanez a helyzet.
Ha másik értéket írtam bele, az sikerült.
Eddig a cookie létezésétől függően töltöttem be egy oldalt.
Csináljam inkább a tartalmától függően? Pl.: bejelentkezve / kijelentkezve?
Lehet, hogy így is kellett volna nekikezdeni?Köszönöm, hogy segítetek!
-
BM#2
csendes tag
válasz
Tele von Zsinór #4337 üzenetére
Törlés után még változatlanul ki tudom olvasni az értékét bármikor, amíg be nem zárom az explorert.
Ennek így kell lenni? -
1ed
csendes tag
Esetleg: setcookie("felhasznalo", false, mktime(0, 0, 0, 1, 1, 70));
de ha a szerver órája késik akkor elvileg működnie kéne, amúgy is. Azt ugye tudod, hogy csak a következő oldalbetöltéskor fog kitörlődni a $_COOKIE tömbből, hacsak nem törlöd magadnak: unset($_COOKIE['felhasználó']);Ahogy Tele von Zsinór is írta.
-
BM#2
csendes tag
Sziasztok!
Légyszíves segítsetek, mert megint elakadtam! Órák óta képtelen vagyok rájönni, hogy hogyan lehet egy cookie-t törölni.
Így hozom létre:
setcookie ("felhasznalo","ittvan",0);
Tudtommal ez így az explorer bezárásáig él, pontosabban ez tényleg működik is.
Ha szeretném előbb törölni, akkor meg így próbálom:
setcookie ("felhasznalo","",time()-60);
Próbáltam többféleképpen is, de valahogy sehogysem sikerült a jó megoldás.Köszi előre is!
-
1ed
csendes tag
Ha jól értem akkor a tömböd elmeihez rendelt kulcsokat szeretnéd nullázni (nem pedig az elemeket rendezni). Mert azt mondjuk ezzel lehet:
http://www.php.net/manual/en/function.array-values.php -
Soja
aktív tag
melyik függvény az, ami a tömb elemeit rendezi át, úgy hogy az üres elemeket eltávolítja. Adott egy tömb, aminek van 1. ,3. , 8. eleme, ebből kellene egy olyan, ahol az elemek egymás után következnek, tehát lenne egy új tömböm 1. , 2. , 3. elemmel.
Köszi -
BM#2
csendes tag
válasz
Tele von Zsinór #4328 üzenetére
Így jó lett, köszi!
-
BM#2
csendes tag
Jövök megint.
Hogyan kell azt jól megcsinálni, hogy egy cookie létezésétől függően töltődjön be egy oldal, vagy átirányítódjon egy másikra?
Én így próbáltam, de ez nem túl jó szerintem.
Így megjelenik egy rövid időre a nem kívánt oldal is:
<?
if ($_COOKIE["user"] == "ittvan")
{}
else
{
?> <meta http-equiv="refresh" content="0;url=belepteto.php"> <?;
}
?>köszi!
-
tkazmer
addikt
az egész funkciónak nem az a lényege, hogy megszámozza a rekordokat, hanem hogy mindegyik rekordnak legyen egy teljesen egyedi azonosítója, amivel hivatkozhatsz rá bárhonnan. ebbe pedig nem fér bele az, hogy mondjuk a "tóth ottó" nevét tartalmazó sor megkapja a 11-es ID-t, ez mondjuk belekerül 27 másik táblába, amiben tóth ottóhoz kapcsolódó adatok vannak, majd mivel kitörlődik mondjuk "tóth gizella" a 10-es ID-vel, ezért tóth ottó hirtelen 10-es ID-t kap. így borulna a komplett adatbázis, vagy át kellene írni mind a 27 táblát, ami meg felesleges munka és terhelés.
-
Sk8erPeter
nagyúr
Igen, ez így rendben van, mivel mindig a legutolsó elemhez ad hozzá egyet, ez az AUTO_INCREMENT lényege.
Van mód rá, hogy újraszámozd a sorokat, ha ez nagyon zavar: [link]. De csak óvatosan a törlésekkel, előtte mentsd ki az adatbázist (ez csak az azonosítómezőt dobja el, de nehogy véletlenül mást is eldobj). -
Soja
aktív tag
Valószínű nektek egyszerű lesz a kérdés:
Mysql adatbázisban az ID-vel rendelkező adat be van állítva automatikus számozásra. Ha elemet adok hozzá, akkor +1 értéket kap. Ez jó is, de ha törlök egy korábbi elemet, pl az elsőt, akkor annak a helyét nem tölti fel. Ez így rendben van? Milyen megoldás lehet erre? -
BM#2
csendes tag
válasz
DeltaPower #4321 üzenetére
Utána fogok nézni a szintaktikájának és kipróbálom ezt is, köszi!
-
BM#2
csendes tag
Sziasztok!
Ismét elakadtam...
Egy txt fájlból olvasom ki az első sort, ami, ha egyforma a programban előre megadott értékkel akkor kiírja, hogy egyforma, ellenkező esetben azt, hogy nem egyforma.
Ez szépen működik is, de csak addig, amíg az az egy sor szerepel a txt-ben. Ha új sorba beírok egy másik szót, akkor már nem találja többé egyezőnek.
Valami a szövegkódolással, vagy mi lehet?
Gondolom nem túl bonyolult, de én megint órák óta nem jövök rá a megoldásra.Így próbálom:
<?
$fa = fopen("valami.txt", "r");
$beszoveg =(fgets($fa));
fclose($fa);
if ($beszoveg == "Helló!")
{
print "<p>Egyforma";
}
else
{
print "<p>Nem egyforma";
}
?>Köszi, ha segítetek!
-
egyjotakaro2
tag
válasz
Sk8erPeter #4316 üzenetére
Mindjárt sírok örömömben
, már kezdtem feladni, erre meg találtam egy include/...../ jól el dugott helyen azt amit 1ed mondott és sikerült, végre sikerült meg oldani, csak jobban bele kellet másznom a kakiba
-
egyjotakaro2
tag
válasz
Sk8erPeter #4316 üzenetére
Igen
Online játék
-
Sk8erPeter
nagyúr
válasz
egyjotakaro2 #4315 üzenetére
Nem érthetőbb, de mindegy.
Ha a MySQL-kódra vagy kíváncsi, akkor az valami ilyesmi:
SELECT power FROM users;Milyen powerről beszélsz??? Mi ez? Valami online játék? A játékosoknak különböző szintű "erejük" van? Vagy mi a frász ez?
-
egyjotakaro2
tag
válasz
Sk8erPeter #4314 üzenetére
Mind1 akkor kérdezek mást. Hogyan tudok egy phpmyadminból lekérdezni valamit?
Most megint ugyan azzal jövök.... Users tábla azon belül power mező.
Amikor a felhasználóknál vagyok az a Tartalomnál és egy felhasználónak be írok 500 powert, a php-n avagy a .tpl-en amikor fel teszem a tárhelyre a .tpl-en vagy a php-n ki írja nekem hogy van 500 powerem. Remélem így érthetőbb :SSzerk. Valami kódott ha kérhetnék.
-
Sk8erPeter
nagyúr
válasz
egyjotakaro2 #4313 üzenetére
Senkit nem vezettél félre, csak még mindig nem akarod megérteni, hogy a semmiből senki nem fogja neked kitalálni, hogy a users táblád pontosan hogy néz ki, milyen mezői vannak, jelenleg milyen paranccsal kéred le az adatbázisból, és mi nem stimmel. Eddig még egyszer sem mutattál olyan kódot, amiből ezt ki lehetne hámozni, mindig csak egy-egy PHP-kóddal vegyített többsoros HTML-kódot (!! nem PHP-kódot!!!) mutogatsz...
Ja, és még azt sem közölted, mi a t÷kömre való az a $power változó, egyáltalán minek kellene benne lennie... Fárasztó. -
egyjotakaro2
tag
válasz
Tele von Zsinór #4312 üzenetére
Bocsánat ha félre vezettem bárkit, nem értéket akarok neki adni, hanem az users táblából a védekezést ki írni, meg jeleníteni.
-
Tele von Zsinór
őstag
válasz
egyjotakaro2 #4311 üzenetére
Ez csak egy újabb mód a kiírásra. Ettől még nem kap értéket.
-
BM#2
csendes tag
válasz
Sk8erPeter #4293 üzenetére
Köszönöm szépen!
Túl egyszerű volt ahhoz, hogy egyből sikerüljön... -
1ed
csendes tag
válasz
egyjotakaro2 #4308 üzenetére
Szia!
A smarty template változóknak alapvetően így lehet értéket adni.
http://www.smarty.net/manual/en/language.variables.php#language.assigned.variables
Ezért valami ilyesmit kéne keresned a .php fájlokban: ... ->assign('power' ... mondjuk ezt így nehéz megmondani, mert lehet másképp is írva, mondjuk "-jelekkel vagy lehet, hogy szóköz is van a ( után ill előtt, stb.
Ha valamit kérdezel, akkor lehetőleg próbáld meg minél jobban körülírni a problémát és minél több információt megadni. Például ha írtad volna, hogy ez egy .tpl fájl akkor kapásból tudtuk volna, hogy az értékadást valahol egészen máshol kell keresned.
A PHP annak köszönheti nagy népszerűségét, hogy viszonylag könnyű megtanulni. De tanulás nélkül nem fog menni. Ahhoz pedig olvasni kell. Sokat. Sokan úgy gondolják, hogy ááá hát van valami változóm (amit ráadásul még csak deklarálni sem kell) valahogy adok neki valami értéket és aztán kiíratom és ennyi, kész a program. Pedig ettől a PHP azért egy kicsit több. Ha nincs más, akkor olvasd az online PHP dokumentációt (az elejétől), szerintem nagyon jó, sok példával (http://www.php.net/manual/en/). Ugyanez létezik Smarty-hoz is http://www.smarty.net/manual/en/
-
egyjotakaro2
tag
válasz
Sk8erPeter #4307 üzenetére
okés okés...
-
Sk8erPeter
nagyúr
válasz
egyjotakaro2 #4304 üzenetére
Pfff, legközelebb az ilyen b@szom nagy kódokat inkább tedd fel pastebin.com-ra, csak bemásolod oda a kódodat, "Syntax highlighting"-nál kijelölöd a PHP-t, és Submit, ennyi, aztán jöhet ide a linkje...
Abban a kódban, amit küldtél, szinte semmi PHP nincs, csak a változó-behelyettesítéseknél.
Pont ennek a template-nek a működését nem fogja neked kitalálni senki.
Olvasgasd szorgalmasan valamelyik PHP-könyvet. Az elejétől. -
egyjotakaro2
tag
válasz
Tele von Zsinór #4305 üzenetére
és ha
<table width="70%">
<tr>
<td width="16"><img src="images/gray_health.jpg"></td>
<td>{ $health }% Életerõ</td>
</tr>
<tr>
<td width="16"><img src="images/gray_shield.jpg"></td>
<td>{ $bescherming } órás védelem
</tr>
<tr>
<td width="16"><img src="images/gray_money.jpg"></td>
<td>Készpénz: € { $cash }</td>
</tr>
<tr>
<td width="16"><img src="images/gray_coins.jpg"></td>
<td>Bankszámlán lévõ pénz: € { $bank }</td>
</tr>
<tr>
<td width="16"><img src="images/gray_award.jpg"></td>
<td>Rang: { $rank }</td>
</tr>
<tr>
<td width="16"><img src="images/gray_world.jpg"></td>
<td>Helyzet: { $stad }</td>
</tr>
</table>
<u>{ $time }</u>
<tr> <td><a href="index.php?p=logout">Kijelentkezés</a></td></tr>
<table width="70%"/> <tr>
<td width="16"><img src="images/gray_lightning.jpg"></td>
<td>{ $power } Erõ</td><br>
<td>
</td><br>
<td>{ $power } Gyorsaság</td>
</tr>
</table>Ezt a részt át teszem php-ba akkor milyen hivatkozással, vagy értékkel kellene csinálnom, hogy megfelelőjen működjön?
-
Tele von Zsinór
őstag
válasz
egyjotakaro2 #4304 üzenetére
Ez egy Smarty template. Abban a kódban kap értéket, ami azt mondja, hogy ezt a templatet renderelje a smarty.
-
egyjotakaro2
tag
Bocsánat, de ez egy tpl-fájl és nem ír semmit sem arról hogy hol kap értéket vagy valami, de itt a cucc:
{ include file="header.tpl"}
<div id="header">
<img src="images/ronde3.png" style="position: absolute; margin-left: 250px;" />
<div id="status">
<table width="70%">
<tr>
<td width="16"><img src="images/gray_health.jpg"></td>
<td>{ $health }% Életerõ</td>
</tr>
<tr>
<td width="16"><img src="images/gray_shield.jpg"></td>
<td>{ $bescherming } órás védelem
</tr>
<tr>
<td width="16"><img src="images/gray_money.jpg"></td>
<td>Készpénz: € { $cash }</td>
</tr>
<tr>
<td width="16"><img src="images/gray_coins.jpg"></td>
<td>Bankszámlán lévõ pénz: € { $bank }</td>
</tr>
<tr>
<td width="16"><img src="images/gray_award.jpg"></td>
<td>Rang: { $rank }</td>
</tr>
<tr>
<td width="16"><img src="images/gray_world.jpg"></td>
<td>Helyzet: { $stad }</td>
</tr>
</table>
<u>{ $time }</u>
<tr> <td><a href="index.php?p=logout">Kijelentkezés</a></td></tr>
<table width="70%"/> <tr>
<td width="16"><img src="images/gray_lightning.jpg"></td>
<td>{ $power } Erõ</td><br>
<td>
</td><br>
<td>{ $power } Gyorsaság</td>
</tr>
</table>
</div>
</div>
<div id="navbar_end_left"> </div>
<ul id="navbar_mid">
<li><a href="index.php">Kezdõlap</a></li>
<li><a href="index.php?p=rules">Szabályok</a></li>
<li><a href="index.php?p=crew">Család</a></li>
<li><a href="index.php?p=members">Játékos Lista</a></li>
<li><a href="index.php?p=members_online">Online Játékosok</a></li>
<li><a href="index.php?p=contact">Kapcsolat</a></li>
<li><a href="index.php?p=faq">F.A.Q</a></li>
<li><a href="index.php?p=forum">Fórum</a></li>
<li><a href="index.php?p=credits">Pontok</a></li>
</ul>
<div id="navbar_end_right"> </div>
<div id="column_container">
<div id="column_dark_content_top">
<div id="column_dark_content">
<div id="menu_head">Személyes Adatok</div>
<div id="menu_content">
<ul>
<li><a href="index.php">- Kezdõlap</a></li>
<li><a href="index.php?p=profile&uid={ $id }">- Profil</a></li>
<li><a href="index.php?p=manageprofile">- Profil beállítások</a></li>
<li><a href="index.php?p=messages">- Üzenet (<b>{ $messages }</b>)</a></li>
<li><a href="index.php?p=secret_link_log">- Titkos Kapcsolat Napló</a></li>
<li><a href="index.php?p=holiday">- Vakáció/Távollét</a></li>
<li><a href="index.php?p=contacts">- Barátok és Ellenségek</a></li>
<li><a href="index.php?p=respect">- Tisztelet</a></li>
<li><a href="index.php?p=links">- Linkek</a></li>
</ul>
</div>
<div id="menu_content_bottom"> </div>
</div>
<div id="column_dark_content_bottom"> </div>
</div>
<div id="column_dark_content_top">
<div id="column_dark_content">
<div id="menu_head">Város</div>
<div id="menu_content">
<ul>
<li><a href="index.php?p=bitch">- Piros Lámpás Negyed</a></li>
<li><a href="index.php?p=jail">- Börtön</a></li>
<li><a href="index.php?p=hospital">- Kórház</a></li>
<li><a href="index.php?p=shop">- Üzlet</a></li>
<li><a href="index.php?p=bank">- Bank</a></li>
<li><a href="index.php?p=station">- Állomás</a></li>
<li><a href="index.php?p=auction">- Aukció</a></li>
<li><a href="index.php?p=garage">- Garázs</a></li>
<li><a href="index.php?p=house">- Ház vásárlás</a></li>
<li><a href="index.php?p=townmap">- Terület Térkép</a></li>
</ul>
</div>
<div id="menu_content_bottom"> </div>
</div>
<div id="column_dark_content_bottom"> </div>
</div>
<div id="column_dark_content_top">
<div id="column_dark_content">
<div id="menu_head">Család</div>
<div id="menu_content">
<ul>
<li><a href="index.php?p=families">- Család Lista</a></li>
{if $family == ""}
<li><a href="index.php?p=newfamily">- Család Alapítás</a></li>
<li><a href="index.php?p=joinfamily">- Csatlakozás</a></li>
{else}
<li><a href="index.php?p=familyprofile&id={ $familyid }">- Család Profil</a></li>
{if $familyrank >= 1}
<li><a href="index.php?p=managefamily">- Család Beállítások</a></li>
{/if}
{if $familyrank >= 2}
<li><a href="index.php?p=familyshop">- Családi Bolt</a></li>
<li><a href="index.php?p=familybank">- Családi Bank</a></li>
{/if}
{if $familyrank >= 3}
<li><a href="index.php?p=familymembers">- Tagok Kezelése</a></li>
{/if}
{if $familyrank >= 0}
<li><a href="index.php?p=familiedonatie">- Családi Adomány</a></li>
<li><a href="index.php?p=fam_donatielog">- Családi Adomány Napló</a></li>
<li><a href="index.php?p=leave_family">- Kilépés a Családból</a></li>
{else}
<li><a href="index.php?p=leave_family">- Kilépés a Családból</a></li>
{/if}
{/if}
</ul>
</div>
<div id="menu_content_bottom"> </div>
</div>
<div id="column_dark_content_bottom"> </div>
</div>
<div id="column_dark_content_top">
<div id="column_dark_content">
<div id="menu_head">Gyilkosság</div>
<div id="menu_content">
<ul>
<li><a href="index.php?p=murder">- Gyilkos</a></li>
<li><a href="index.php?p=detectives">- Nyomozó</a></li>
<?php// <li><a href="index.php?p=assasin">- Bérgyílkos</a></li>?>
<li><a href="index.php?p=maffia">- Védelem</a></li>
<li><a href="index.php?p=hitlist">- Halállista</a></li>
</ul>
</div>
<div id="menu_content_bottom"> </div>
</div>
<div id="column_dark_content_bottom"> </div>
</div>
</div>
<div id="content_container">
{ $content }
<div class="footer">© <?php echo"2010 - " . date("Y"); ?> Minden jog fentartva.</div>
</div>
<div style="float: left; width: 210px;">
<div id="column_dark_content_top">
<div id="column_dark_content">
<div id="menu_head">Bûnözés</div>
<div id="menu_content">
<ul>
<li><a href="index.php?p=crimes">- Bûnözés</a></li>
<li><a href="index.php?p=carstealing">- Autólopás</a></li>
<li><a href="index.php?p=drugs">- Drogok</a></li>
<li><a href="index.php?p=drinks">- Ital Bolt</a></li>
<li><a href="index.php?p=hostage">- Túszok</a></li>
{if "$rank 7"}<li><a href="index.php?p=orgcrimine">- Szervezett Bûnözés</a></li>
<li><a href="index.php?p=weapontrade">- Fegyverkereskedelem</a></li>{/if}
<li><a href="index.php?p=fraud">- Adathalász</a></li>
<li><a href="index.php?p=race">- Utcai verseny</a></li>
</ul>
</div>
<div id="menu_content_bottom"> </div>
</div>
<div id="column_dark_content_bottom"> </div>
</div>
<div id="column_dark_content_top">
<div id="column_dark_content">
<div id="menu_head">Pontok({ $callcredits })</div>
<div id="menu_content">
<ul>
<li><a href="index.php?p=credits">- Pontbolt</a></li>
<li><a href="index.php?p=vip">- VIP Felhasználó Kiváltása</a></li>
<li><a href="index.php?p=spendcredits">- Pontok Levásárolása</a></li>
</ul>
</div>
<div id="menu_content_bottom"> </div>
</div>
<div id="column_dark_content_bottom"> </div>
</div>
<div id="column_dark_content_top">
<div id="column_dark_content">
<div id="menu_head">Szerencsejáték</div>
<div id="menu_content">
<ul>
<li><a href="index.php?p=wheel">- Szerencse Kerék</a></li>
{if ""}<li><a href="index.php?p=higherlower">- Hoger lager</a></li>
<li><a href="index.php?p=lottery">- Sorsolás</a></li>{/if}
<li><a href="index.php?p=guess">- Raad het getal</a></li>
<li><a href="index.php?p=roulette">- Roulette</a></li>
<li><a href="index.php?p=cracksafe">- Kiváló a Biztonságos</a></li>
<li><a href="index.php?p=rockpaper">- Kõ-Papír-Olló</a></li>
{if ""}<li><a href="index.php?p=blackjack">- Blackjack</a></li>{/if}
</ul>
</div>
<div id="menu_content_bottom"> </div>
</div>
<div id="column_dark_content_bottom"> </div>
</div>
<div id="column_dark_content_top">
<div id="column_dark_content">
<div id="menu_head">Statisztika</div>
<div id="menu_content">
<ul>
<li><a href="index.php?p=members">- Regisztrált Felhasználók: { $users }</a></li>
<li><a href="index.php?p=members_online">- Online Játékosok: { $users_online }</a></li>
<li><a href="index.php?p=stats">- További statisztikák</a></li>
</ul>
</div>
<div id="menu_content_bottom"> </div>
</div>
<div id="column_dark_content_bottom"> </div>
</div>
</div> -
Tele von Zsinór
őstag
válasz
egyjotakaro2 #4300 üzenetére
Na, akkor most már biztosra mondom, hogy semmi fogalmad a php-ról
Kezdd az alapoknál, sok jó könyv elérhető ebookban is mindenféle torrentoldalakon. Ha megmaradsz az egyszerű kódoknál, megteszi a "PHP5 24 óra alatt".
-
Tele von Zsinór
őstag
válasz
Sk8erPeter #4299 üzenetére
Tipp, és a kérdésed alatti komment megerősíti: azt hiszi, a { $izé} az rögtön le is kéri az értéket az adatbázisból.
-
Sk8erPeter
nagyúr
válasz
egyjotakaro2 #4300 üzenetére
De könyörgöm, inkább azt mutasd már meg, hogy a $power változód HOL kap értéket?? Honnan kéne kitalálni?!
Ezenkívül ha kódot másolsz be, akkor jelöld ki a kódrészletet, és itt a hsz.-írásnál nyomd meg a "Programkód" gombot, akkor kissé átláthatóbb lesz...Szerk.: vagy Te úgy gondolod, hogy a PHP-nek ismernie kellene az általad kitalált $ved és $gyors változókat?
Szerk. 2.:
(#4302) Tele von Zsinór: ja jó, akkor megnyugodtam, azt hittem, csak én érzem úgy, hogy itt valami nem stimmel...Mellesleg komolyan, olyan, mintha a srác valami paródiát akarna csinálni a PHP topicból...
Új hozzászólás Aktív témák
Hirdetés
- lezso6: Nem látszik a kurzor Chrome alatt a beviteli mezőkben?
- Call of Duty: Black Ops 6
- Autós topik látogatók beszélgetős, offolós topikja
- Sütés, főzés és konyhai praktikák
- Vezetékes FEJhallgatók
- Windows 11
- Xbox tulajok OFF topicja
- Stellar Blade
- Nyaralás topik
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- További aktív témák...
- Azonnali készpénzes AMD CPU AMD VGA számítógép felvásárlás személyesen / postával korrekt áron
- BESZÁMÍTÁS! Gigabyte B550M R7 5700X 32GB DDR4 512GB SSD RX 7700 XT 12GB DeepCool CC560 Seasonic 650W
- BESZÁMÍTÁS! 32GB (2x16) G.Skill Trident Z RGB 6600MHz DDR5 memória garanciával hibátlan működéssel
- SanDisk Extreme Portable 8TB (SDSSDE61-8T00-G25)
- LG 45GR95QE - 45" Ívelt OLED / 2K WQHD / 240Hz 0.03ms / NVIDIA G-Sync / FreeSync Premium / HDMI 2.1
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest