Html-, css- és php-help
Jelentkezz be a hozzászóláshoz.
$query = mysql_query("SELECT * FROM login WHERE id = 2");
while($adat=mysql_fetch_array($query)){
if ($_POST<'boy'>'boy'> == 'boy'){
$sql = mysql_query ("UPDATE `login` SET `ertesit`='boy' WHERE `id`= 2");
}else{
$sql = mysql_query ("UPDATE `login` SET `ertesit`='girl' WHERE `id`= 2");
}
}
Ez a kód miért nem mûködik??
Logitech G25 tulajos!!
A sessionban semmi nehéz nincs.
A lényeg az, hogy az összes php, amit szeretnél, hogy kezeljen sessiont (az inklúdok nem), úgy kell kezdõdnie:
<?php
session_start();
Nekem mondjuk egyszerû, mert van index.php-m és admin.php-m, és ennyi. A formok sem vezetnek más oldalra. Mindkettõ így kezdõdik, ezzel a session_start() le van tudva.
Utána pedig nagyjából ugyanúgy mûködik a $_SESSION, mint a $_COOKIE.
És: soha ne usernévre nyiss sessiont, mindig id-re.
Egy fecske nem csinál kolbászból kerítést
Miután belépett a felhasználó bejut a user/index.php-ba. Ott kiválasztja az 'Adatlap' menü és eljut az adatlap.php-ba. Ott van egy rész ahol megnézem az adatbázisbol, hogy van-e értéke az ertesit mezönek(ha fiu vagy lány regisztrál kap egy mailt).Ha nincs akkor azt irja ki, hogy nincs bekapsolva majd van egy link és ha arra rákattint akkor elvezet egy másik oldalhoz: ertesitbe.php. Itt van egy form: type=radio name=ertesit value=boy, value=girl és egy submit gomb. Ha bepipálja valamelyiket akkor rákattint a mehet gomba és a radio value értékét felviszi a felhasználó ertesit mezöjébe.
Hát röviden ennyi.
És a #10324 hsz.-ben produkált kódom nem viszi fel a mezöbe. Megnéztem, hogy ha a fiu valueset jelöli be akkor az ertesit mezöbe irja át boy-ra az értéket. Ellenkezö esetben a lany erteket irja be.
Én igy végig mentem még magamba mondtam is de valamiért nem mûködik :S
ui.: olvasom a PHP-Feketekönyvet, majd átnézem a SESSION részt. És most nekem elég a COOKIE mert nem lessz olyan látogatott az oldal szerintem. De ha a statisztika nagy lessz akkor átírom SESSION-osba.
De annak még nincs itt az ideje 😊
Logitech G25 tulajos!!
Légyszi kicsit bõvebben fejtsd ki, hogy mit csináljon az oldal, pl:
"Online rádió, van rajta egy form a köv adatokkal:
név, születési idõ, nem, kedvenc csatorna.
Ha postolja az oldalt, az adatokat beteszem adatbázisba, a böngészõ pedig kap egy cookie-t."
Így-e lesz?
...
Attól függetlenül, ha meg akarsz tanulni programozni, tudnod kell session-öket is kezelni. (Bejelentkeztetni pl. csak úgy fogsz tudni felhasználókat)
A cookie abban az esetben nem lesz jó, ha 2 felhasználó ugyanazt a számítógépet használja és mondjuk ugyanazt az oldalt látogatják.
Egy fecske nem csinál kolbászból kerítést
Logitech G25 tulajos!!
...
Mit is szeretnél tulajdonképen? (mit csináljon a php)
Egy fecske nem csinál kolbászból kerítést
Én anno naponta lógtam a silkroad.uw.hu-n! De az extrásat is szerettem!
BB7: egy irodai alkalmazottnak felesleges php-ul,pascalul tudnia, sõt szerintem még Acces-t se nagyon (bár ezt kitudja). Aki meg infoval akar továbbtanulni, annak meg kell szoknia a Linuxot és kész, szerverek nagyrészéb úgyis csak az van 😊
[ cod.magyaritasok.hu ] _____|\\_____\\o/___ Cápatámadás ಠ_ಠ
$sql = mysql_query ("UPDATE `login` SET `ertesit`='boy' WHERE `username`='".$_COOKIE<'username'>'username'>."'");
}else{
$sql = mysql_query ("UPDATE `login` SET `ertesit`='girl' WHERE `username`='".$_COOKIE<'username'>'username'>."'");
}
}
Nos ezt hoztam ki belöle de minden esetbe girl értéket ad a mezönek :S Hibát sem ír ki. Mi lehet a gond??
Logitech G25 tulajos!!
valami helyére beírod az adott sor azonosítóját a login táblába, az id helyére pedig az azonosító oszlopnevét
Egy fecske nem csinál kolbászból kerítést
A google robotja hasonlóan mûködik, mint a linuxos wget parancs. (Meg ugye néhányan windows alatt is használják :-) )
Egy fecske nem csinál kolbászból kerítést
Szóval van egy login táblám és egy ertesit mezöm. Van egy boy és egy girl értékem. Erre letudnád írni a kódját ??
Logitech G25 tulajos!!
<meta name="keywords" content="ide, akulcsszavak, vesszövel, elválasztva">
Logitech G25 tulajos!!
Ha szeretném, hogy a gugi megtalálja a weblapom mit kell tenni? Hogy kell keresõbe regelni?
Elõre s kösz!
Aki másnak vermet ás, ne nézd a fogát!
Sajnos ahhoz, hogy érdekesebb dolgokat vegyetek, szakos osztálynak kellene lenni, illetve a tananyagban érdekelt osztálytársaknak (ha a lányok a közösségi oldalakkal vannak elfoglalva az Excel helyett, illetve ha az osztály fele nem érti, akkor hiába kezdi a tanár például a Linux bash shell rejtelmeit taglalni...)
"és a vicces, hogy a fél osztály
Tipikus... ...és sajnos elkeserítõ hogy ez a magyar diákság (tisztelet a kivételnek).
"De egy HTML, talán PHP alapot adhatna! "
HTML-t biztos fogtok tanulni, PHP-t már nem biztos.
Elsõ programozási nyelvnek a PHP nem is annyira javallott - inkább Logot (általános iskola felsõ tagozatának elején), Pascalt vagy Basicet oktatnak (mielõtt valaki azt mondaná, hogy ezeket a nyelveket nem használjuk, ezek a nyelvek pont oktatási célzattal készültek - hogy megtanuld a struktúrákat).
"3.:Igen, nem is magát az op.rendszerüket szidtam, pusztán azt, hogy CSAK erre a cégre van kihegyezve a tanterv!"
Alapvetõen ha megnézed, az átlag irodai munkás cégek 98%-a Windowst (illetve MS Office-t) használ. Ebbõl következõleg a munkaadó elvárja, hogy a munkavállaló ezeket ismerje.
"Feltettem az Apache-ot."
Appserv, Wamp, Xammp - ezekben (bármelyikükben) - az Apache webszerveren kívül - benne van a PHP szkriptnyelv meg a MySQL nevû adatbázisszerver.
És azért hoz létre új rekordot, mert INSERT IGNORE INTO-t használsz UPDATE helyett sql-ben.
Az Appserv, amit linkeltem sokkal jobb. Ez, amit te raktál fel, nekem sem akart mûködni.
Egy fecske nem csinál kolbászból kerítést
ECDL: 1.modul: op.rendszerek: Megkérdezi egy lány, hogy mi az a Linux. Tanár: "Egy, a Windowstól teljesen eltérõ op.rendszer, ami sokkal rosszabb, mert úgy van megcsinálva, hogy nem lehet használni" <#idiota>#idiota>WTF? És ezt így az legelsõ 5óra tájékán! itt már elásta magát nálam! -.-
3.:Igen, nem is magát az op.rendszerüket szidtam, pusztán azt, hogy CSAK erre a cégre van kihegyezve a tanterv!
ON:
Feltettem az Apache-ot. Konfigurálásnál localhost-ot és 80as portot adtam meg! De mikor el akarom indítani, ezt a hibát kapom: KÉP
Ötlet?
"Amúgy mélységesen elítélem az Általános- és Középiskolai infó tanrendszert! Minek kell éveket szo*ni a Májkroszoft neve által fémjegyezett sz@rokkal, s miért nem lehet hasznos dolgokat tanulni/tani?"
1. Az átlagfelhasználónak nincsen szüksége programozási ismeretekre (vagy nem tudja elsajátítani õket). Aki ilyesmiket akar tanulni járjon szakköre, fakultációra, autodidakta módon (az informatika tanulásának fõ módja egyébként is az egyéni önálló gyakorlásban leledzik - ha TE magadtól nem írsz meg egy programot, csak könyvben olvasod, vagy csak az órán gyakoroltakat oldod meg, akkor nem biztos hogy érteni fogod az egészet) képezze tovább magát.
2. Miért a Microsoft termékei? Mert elõbb terjedtek el a desktop piacon mint a "versenytársai" (a Linux - ami az utóbbi évtizedben tört be a desktop piacra - 1991-ben indult el, addigra már a DOS, Windows befutott termék volt) így befutottabb, kiforrottabb, támogatottabb.
3. Ne aggódj más rendszereken is lehet szopni. Linux alatt is. MacOSX alatt is. BSD alatt is.
</off>
Azt ugye tudod, hogy a header() function csak a </head> html tag elõtt mûködik? Ellenkezõ esetben "Warning: Cannot modify header information - headers already sent by..." a hibaüzenet.
Amúgy miért cookie-ból akarsz authentikálni?
Egy fecske nem csinál kolbászból kerítést
Van egy ilyen kódom:
<?php
$conn = conn();
echo '
<span class="nev">
Az értesítést itt tudod bekapcsolni:<br>
<br>
<form method="post">
<input name="ertesit" type="radio" value="boy" class="bevitel">Fiúra kérem.<br>
<input name="ertesit" type="radio" value="girl" class="bevitel">Lányra kérem.<br><br>
<input type="submit" value="Mehet" class="bevitel">
</form>
</span>
';
$query = mysql_query("SELECT * FROM login WHERE username = '".$_COOKIE<'username'>'username'>."'");
while($adat=mysql_fetch_assoc($query)){
$ertesit = $adat<'ertesit'>'ertesit'>;
if (empty($ertesit)){
$sql = mysql_query ("INSERT IGNORE INTO login (ertesit) VALUES ('".$_POST<'ertesit'>'ertesit'>."')");
header ("Location: adatlap.php");
}else{
echo 'Sikertelen felvitel';
}
}
?>
Ez a kód nem mûködik, hanem a mezöbe nem a cookie felhasználóhoz rakja a boy vagy a girl értéket, hanem nyit neki egy uj mezöt :S
És az oldalra még ezt írja ki:
Warning: Cannot modify header information - headers already sent by (output started at /user/ertesitbe.php:34) in /user/ertesitbe.php on line 66
Logitech G25 tulajos!!
[ cod.magyaritasok.hu ] _____|\\_____\\o/___ Cápatámadás ಠ_ಠ
[ cod.magyaritasok.hu ] _____|\\_____\\o/___ Cápatámadás ಠ_ಠ
A microsoft a tudomány igazi visszahúzóereje.
"Mivel elõre láthatólag a hétvégém szabad, ezért ennek is utána nézek."
Amit linkeltem -> kattint, letölt, telepít :-) 5 perc. Minden fut alatta, ami php. Akkor is jó dolog, ha csak kísérletezel modulokkal, mint pl. a joomla. (Amúgy én abszolut nem vagyok joomla-párti, de félelmetesen profi megoldásokat alkalmaznak benne, rengeteget lehet belõle tanulni)
A nyelvi dolog sikerül?
Egy fecske nem csinál kolbászból kerítést
Hiszem, hogy nem könnyû ennyi mindent egyszerre megtanulni, de majd kiderül!
Amúgy mélységesen elítélem az Általános- és Középiskolai infó tanrendszert! Minek kell éveket szo*ni a Májkroszoft neve által fémjegyezett sz@rokkal, s miért nem lehet hasznos dolgokat tanulni/tani? <#wilting>#wilting>
A végén még vinnénk valamire, és az ugye nem jó azoknak, kik fent vannak!
Gondolom, van a gépeden apache, nem pedig feltöltögetsz egy tárhelyre.
A php programozó localhostban dolgozik, és ha kész, feltölti. Egyelõre php 5-öt használj, jónéhány dolog nem megy a 6-tal. Az Appserv innen tölthetõ le. Könnyen configolható windowsos apache mysql adatbázissal.
Pár jótanács:
A kódokat nyugodtan írogasd át, mert nincs tétje. Persze az eredetit mentsd le, hogy legyen backup minden esetben. Meg ha haladsz egy munkával, menet közben is backupold a kódot.
Ha pedig innen kapsz scriptet és valamit nem értesz benne, csak kérdezz, azzal tanulsz. Mindig jön válasz valakitõl.
php alapokat meg kell tanulni. Addig nem fogsz tudni programozni, míg nem ismered a tömb fogalmát, amíg nem használsz function-öket, kell ismernek a visszatérési érték fogalmát, meg még jópár dolgot. if, for, while, foreach, sorolhatnám. Ezt az oldalt mindig használd, még az öreg php programozók is lapozgatják.
Van viszont néhány függvény, amit kihagyhatsz. Ilyen pl. a case-switch. Pl. én ismerem és tudom használni, de maradok az if-nél.
Egy fecske nem csinál kolbászból kerítést
Természetesen az alapokat átvettem, tanulom, és ez a baj, hogy tanulás közben vertem ekkora fába a fejszém! Amit leírtál, azt, igaz nem 100%-ig, de értem, ellenben bele/át írni nem tudom/merem!
Viszont sok PHP kifejezést/kódot nem teljesen értek! Ezt betudhatom annak, hogy kevés normális tutorial-t találtam a neten! Ezúton is szeretném kérni, hogy ha valaki tud átfogó, könnyen emészthetõ, de mégis praktikus, hasznos tutorial-t. Azt nagyon meghálálnám!
Amit viszont nem értek ebben a kódban, az az,hogy hol vannak meghatározva az országkódok?
2 file van, figyeld a commentet a <?php után.
<?php
##Index.php
$host = gethostbyaddr($_SERVER<'REMOTE_ADDR'>'REMOTE_ADDR'>);
$temp = explode(".",$host);
for($i=0; $i<count($temp); $i++)
{
if($i == (count($temp)-1)) { $orszagkod = $temp<$i>$i>; }
}
$langFile = "languages/lang-".$orszagkod.".php";
include($langFile);
?>
<html><head>...stb,stb
<body>
<table>
<tr>
<td>
<?php echo BEVEZETO; ?>
</td>
</tr>
<tr>
<td>
<img border="0" src="kepek/kep1.jpg" alt="<?php echo KEP1; ?>" />
</td>
</tr>
</table>
stb... stb...
<?php
##Langfile
define("BEVEZETO","
Egyszer volt, hol nem volt, stb... stb...
");
define("KEP1","
A képen Béla látható, amit épp egy delfint idomít.
");
?>
Egy fecske nem csinál kolbászból kerítést
20 nyelvnél felejtsd el a hun.php-t, ger.php-t!!4
Minden szöveg nyelvesítéssel legyen megoldva. Majd kifejtem.
Meg szabad tudni, hogy mi lesz ez az oldal?
Egy fecske nem csinál kolbászból kerítést
A megoldás attól függ, hogy 10 országra, vagy mondjuk 150-re akarod megcsinálni a felismerést.
Ha 150-re, akkor egy 8 megás adatbázisból tudod az ip-hez tartozó országot kivenni, ha jól emlékszem, több mint 200.000 rekord volt benne.
Ha elég pár országra, akkor egy pár soros scripttel megoldható.
Egy fecske nem csinál kolbászból kerítést
A következõ kérdéssel fordulok hozzátok:
Egy pár külföldi oldal, egyéb beállítások nélkül már a fõoldalon magyarul fogad!
Ezt valahogy úgy érhetik el, hogy talán IP vagy egyéb adatból kisz*pva a már lefordított oldalra vezet!
Nekem valami ilyen megoldás kéne!
Gyors példa:
Az index.php-ben el kéne helyezni valami kódot, hogy ha az illetõ pl. magyar, akkor egybõl irányítsa a hun.php-ra, ha német akkor a ger.php-n találja magát egybõl a felhasználó. Ismeretlen, vagy nem bekonfigurált nyelveket egybõl átvinné az index2.php-ra ahol a már meglévõ nyelvek közül válogathatna!
Tehát valami ilyesmi megoldásra lenne szükségem! Ha nem megoldható, elnézést kérek, bár gondolkodok példaoldalakon!
Elõre is köszönöm!
Code:
<?php
if(isset($_GET<'id'>'id'>)){
$kistagok = "select * from tw_users where id=".$_GET<'id'>'id'>;
}else{
$kistagok = "SELECT * FROM tw_users ORDER BY id desc LIMIT 100";
}
$eredmeny = mysql_query($kistagok);
while ($sor = mysql_fetch_array($eredmeny)) {
?>
<?= $sor["username"] ?>
<? } ?>
[O_O] (.)(.)
[ cod.magyaritasok.hu ] _____|\\_____\\o/___ Cápatámadás ಠ_ಠ
http://extra.hu/login/register
[/spam]™
[ cod.magyaritasok.hu ] _____|\\_____\\o/___ Cápatámadás ಠ_ಠ