22786
Html-, css- és php-help
-
#3814 Sziasztok! Tudna valaki segíteni nekem TorrentBits tracker ügyben??? -
Anotino #3813 delete from users where id=4;
Ha az id get vagy post metodussal erkezik, ne feledd el ellenorizni elotte is_numeric()-el, hogy tenyleg szam-e, kulonben nem biztonsagos a kod.
( pl id-t megvaltoztatjak "1 OR TRUE" -ra es kitoroltek a tabladat ) -
#3812 Hogyan lehet meghatározni, hogy egy keresett rekord létezik-e az adatbázisban? Tehát pl. szeretném törölni a FROM users WHERE ID=4 rekordot, de csak akkor ha létezik ID=4 rekord :) -
morfologus #3811 köszi! -
blackgamer #3810 Segítségeteket szeretném kérni! DIV-es scroll-ozható szövegdobozba szeretnék filter:alpha opacity-s hátteret (vagyis hogy átlátszó legyen a szövegdoboz), sikerült is de a betű is halvány lett, majd amikor ezt kiküszöbültem, akkor pedig a scrollbar lett "erős" pedig azt is halvánnyá szeretném a szövegdoboz hátterével együtt
Talán örökléssel lehet valami gubanc, de nem igazán látom át, (position:relative ?)
Feltöltöttem példákat hogy mi a probléma (bocs a kusza forrásért, ollóztam mindenhonnan)
itt jó (halvány) a scroll, de a betű is (sajnos)
itt nem halvány a betű, de sajnos a scrollbar is virít
Olyan megoldás is érdekelne hogy nincs scrollbar de görgővel és billentyűzet nyilakkal lehetne görgetni a doboz tartalmát
(az overflow:hidden; csonkolja a tartalmat sajnos nem megoldás magában) -
#3809 "Php-t szeretnék szerkeszteni a gépemen"
Akár Jegyzettömbbel is lehet (mazochista azzal csinálja), de jobban jársz kódszerkesztő program használatával (Notepad++, Notepad2, PSPad, JEdit, Context, Weaverslave,...).
"és szeretném ha a gépemen is meg tudnám tekinteni az eddig szerkesztetteket!"
Ehhez fel kell tenned egy webszervert (IIS, vagy Apache) a gépre, és a webszerverhez a PHP modult.
De ha egyszerűen, beállítások nélkül akarod mindezt megoldani, akkor ajánlom figyelmedbe a különböző [url=http://webmester.lap.hu/#b13737956]"fejlesztői környezeteket"[/url], amelyekbe bele van építve a PHP és egyéb hasznos dolog. Én a Xammp-ot ajánlom. -
morfologus #3808 Helló all!
Php-t szeretnék szerkeszteni a gépemen és szeretném ha a gépemen is meg tudnám tekinteni az eddig szerkeztetteket!
Hogyan lehet??? -
Bence9292 #3807 Hello!
http://www.poqbum.com/Gens/countdown/ Ezen az oldalon generáltam egy visszaszámlálót a NFS: Carbonhoz, de nem tudom, hogy hogy kell ezt egy weblapra feltenni a dreamweaverrel vagy valami más szerkesztővel. Lécci segítsetek!
Egyébként ezt a kódot generálta csak nem tudom, hogy mit kezdjek vele:
<p align='center'><br><embed src='http://files.poqbum.com/Files/Gens/countdown/countdown/cndplayer.swf?skinn=http://files.poqbum.com/Files/Gens/countdown/countdown/skin1.swf&bg_c=2184668&bg_mc=5397238&tcm=fffacf&tcu=12101a&msg=Van%20a%20NFS%3ACarbon%20megjeleneseig%21&tyear=2006&tmonth=11&tday=1&thours=0&tminutes=0&tseconds=0' quality='high' width='310' height='180' name='cndplayer'></embed><br><a href='http://www.poqbum.com/' target='_blank'><small>Create Your Own Countdown</small></a><br></p>
Köszönöm szépen!
-
#3806 Ez már megvan. Most ilyen bajom van:
Vannak az ID-k a táblában. ezek nem sorban vannak (1; 2; 4; 5; 7; 9 ...stb.) És valamiért az első elemet - jelen esetben ez az 1 - nem látja, és a másodiktól kezdi :) - tehát 2; 4; 5; 7; 9; van kilistázva - :P -
#3805 Ha már lúd, legyen kövér:
<?php
if (isset($_GET["page"])){
$valtozo=$_GET['page'];
switch ($valtozo) {
case "egyes":
include("egyes.php");
break;
case "kettes":
include("kettes.php");
break;
default:
include("hiba.php");
}
}
?>
-
adic #3804 Sziasztok!
Még mindíg ezzel az előző kóddal nyűglődöm.
Tresszer: a fájlok ugyanabban a könyvtárban vannak ahol a proba.php van.
a proba.php-n belüli php részt erre javítottam:
<?php
if (isset($_GET["page"])){
$valtozo=$_GET['page'];
if ($valtozo=="egyes"){
include("egyes.php");}
else include { ("kettes.php");}
}
?>
most "Parse error"-t jelez az else-t tartalmazó sorban.
Tudom , hogy pancser vagyok , de nem tudok rá jönni mi lehet a hiba. :-(
(ja egyébként ez az oldalam frame-ek nélküli felépítésére kísérleteztem ki.)
Segítségeteket előre is köszönöm
adic
-
#3803 Biztonság @ Weblabor:
-
#3802 koszonom! erre voltam kivancsi! -
Anotino #3801 Sajnos most nincsenek nalam a bookmarkjaim, max csak jovo heten tudom kuldeni oket. De google-al biztosan tudsz talalni parat.
Leirom nehanyat a leggyakoribb hibak kozul, hatha mast is erdekel.
1---------------------------------
Talan a legkritikusabb az include, szoros ellenorzes alatt kell tartanod, mit is akarsz includeolni. pl switch-el :
switch($page)
{
case "elso": include("elso.html"); break;
}
Ha valami miatt mindenkepp szukseges, hogy user altal megadott filet kell includeolni, tedd lehetetlenne, hogy konyvtarat valtsanak.
function traverse_filt($string)
{
$charlist = "\\;\"\'#\$%^&*()/";
$string = str_replace("..", "", addcslashes($string, $charlist));
return $string;
}
A fenti fuggveny tapasztalataim szerint kiszur minden ilyesmi probalkozast. De ismet hangsulyozom: jobb nem erre hagyatkozni, es elore megadni minden lehetseges parametert (pl switchel).
Amiert erre szukseg van:
http://index.php?page=../../../../etc/passwd
Es mar ott is van az illetonel a passwordod. De meg ha safe modeban van is a php, akkor is az osszes fileodhoz hozzafer, meg azokhoz is amiket esetleg nem akartal publikussa tenni.
2------------------------------------
MySQL injection
Ha mysql-t hasznalsz es valamilyen beviteli mezobol kersz adatokat.
Pl egy tipikus pelda: ellenorzod, hogy belephet-e az illeto:
select id from user where username="$_POST['username']" and userpass="$_POST['userpass']";
de o mondjuk ilyen ertekeket ad: usernamenek ures erteket, passwordnek pedig " OR TRUE -t.
Igy a fenti sql lekerdezes igy fog kinezni:
select id from user where username="" and userpass="" OR TRUE;
Es szepen beengedi az illetot. Ugyanennyi erovel akar ki is torolheti az adatbazisodat.
A megoldas pl: mysql_real_escape_string fuggveny, ami megakadalyozza, hogy a nyito idezojeledet bezarja valahogyan (escape karaktert rak az idezojel lezarasok ele).
3-----------------------
Register globals.
Nezd meg hogy be van-e kapcsolva, eleg nehez biztonsagos kodot irni.
ini_get('register_globals') -al ellenorizheted le, hogy a szervereden be van-e kapcsolva. Ha igen es nem all mododban kikapcsolni, akkor sincs nagy baj, a kovetkezo scriptet includeold minden fileod elejen:
if (ini_get('register_globals'))
{
foreach($GLOBALS as $s_variable_name => $m_variable_value)
{
if (!in_array($s_variable_name, array('GLOBALS', 'argv', 'argc', '_FILES', '_COOKIE', '_POST', '_GET', '_SERVER', '_ENV', '_SESSION', 's_variable_name', 'm_variable_value')))
{
unset($GLOBALS[$s_variable_name]);
}
}
unset($GLOBALS['s_variable_name']);
unset($GLOBLAS['m_variable_value']);
}
Hat kb ezek a legfontosabbak. Kiindulasnak a http://hu.php.net/manual/hu/security.php -el kezd. -
Tresszer #3800 Ha lehetne azt is ird már meg hogy hogyan tudnak feltörni e weboldalt.Nem azért kérdezem mert én is azt akarom hanem csak érdekelne köszi -
Tresszer #3799 Tudnál mondani olyan weboldalt ami a biztonságos kódolásról ír?Még kezdő vagyok ilyenbe ugyhogy bocs ha hülyeséget írtam.HA tudsz írhatnál hogy milyen megoldások lennémek erre.Köszi -
Anotino #3798 Azt hiszem safe mode-os korlatozasok ezt nem engedik, de nem szabad erre epiteni. csak egyszer raksz fel egy ilyen scriptet egy rendes nem safemode-os szerverre, es feltorik nehany napon belul. A szerveremen naponta 2-3 -an probalkoznak olyan modszerekkel, amire a megoldasod tart kapukat nyit. -
Anotino #3797 Ilyet nem szabad csinalni, barmilyen filehoz hozzaferhetnek igy a szerveren, sot sajat php kodot(ezaltal oprendszer utasitasokat) is tudnak futtatni. -
#3796 if (!$handle = fopen($filename, 'a'))
Ha nem tudja megnyitni a fájl-t hozzácsatolásra...
echo "1 - Ezt írja ki."; - majd kilép a szkriptból.
if (fwrite($handle, "\r\n" . $_GET["cookie"]) === FALSE)
Ha nem tud a fileba írni...
echo "2 - Ezt írja ki."; - majd kilép a szkriptból.
Ha sikeresen végrehajtotta az egészet:
echo "3 - Ezt írja ki."; - lezárja a fájl-t, majd kilép a szkriptból.
Ha nem kapott az URL-ben coookie nevű paramétert:
echo "4 - Ezt irja ki.";
Majd kilép a szkriptból.
-
#3795 Hy! lenne egy kérdésem egy rövidke PHP scriptrol:
<?php
$filename = "cookie.txt";
if (isset($_GET["cookie"]))
{
if (!$handle = fopen($filename, 'a'))
{
echo "1 - Ezt irja ki.";
exit;
}
else
{
if (fwrite($handle, "\r\n" . $_GET["cookie"]) === FALSE)
{
echo "2 - Ezt irja ki.";
exit;
}
}
echo "3 - Ezt irja ki.";
fclose($handle);
exit;
}
echo "4 - Ezt irja ki.";
exit;
?>
Azt ugye jol latom, hogy 4 elágazás vann benne amit kiir?
A kerdesem, hogy mitol fugg, vagyis mikor irja ki az elsot, mikor a masodikat, mikor a harmadikat és mikor a negyediket? -
Tresszer #3794 Ja meg azt nézd meg hogy a gájl ugyan abban a könyvtárban van e mint ahonnan meghívad mert a hibaüzenet azt írja hogy nincs ilyen fájlod. -
Tresszer #3793 Akkor probal meg ezt:
<?php
$valtozo=$_GET['page'];
if ($valtozo=="egyes") {
include("egyes.php") }
else {
include("kettes.php")}
?> -
adic #3792 Köszönöm a választ Tresszer, de sajnos most is ugyanazt a hibát jelzi ki. -
Tresszer #3791 Én a helyedben include()-t használnék a php része a következő
<?php
$valtozo=$_GET['page'];
include("$valtozo.php");
?>
asszem így menni fog; -
adic #3790 Sziasztok!
Kis segítségre lenne szükségem. A következő kódban mi lehet a hiba?
Ez egy proba.php fájlban van.
**************
<table border ="1" align="center" width="80%">
<tr>
<td><a href="proba.php?page=egyes">egyes</a></td>
<td><a href="proba.php?page=kettes">kettes</a></td>
</tr>
<tr>
<td colspan="2">
<?php require($_GET['page'].'.php') ?>
</td>
</tr>
</table>
*************
és a következő hibaüzenetet jeleníti meg a böngésző:
Notice: Undefined index: page in c:\program files\easyphp1-8\www\proba.php on line 8
Warning: main(.php): failed to open stream: No such file or directory in c:\program files\easyphp1-8\www\proba.php on line 8
Fatal error: main(): Failed opening required '.php' (include_path='.;C:/Program Files/EasyPHP1-8\php\pear\') in c:\program files\easyphp1-8\www\proba.php on line 8
Segítségeteket előre is köszönöm
adic -
Anotino #3789 Hmm, remenykedtem benne, hogyha a celpont is off, akkor megkapja a headert meg a postolt cuccokat. Mondjuk igy belegondolva apacs nelkul tenyleg bajos lenne.
De sebaj, irtam kozben egy altalanos js fuggvenyt, ami szepen ki tudja szedni az url-ben atadott ertekeket. -
#3788 Nem, hisz a GET és POST metódus segítségével a kliens oldalról küldeni szoktak (mind űrlapoknál, mind AJAX-nál), amit a szerver oldalon fognak meg, dolgoznak fel. -
Anotino #3787 Udv!
Javascripttel el lehet erni valahogy a POST metodussal kuldott cuccokat? offline futtatott xhtml+js
(Nemre saccoltam Get-el megoldottam b terv gyanant -az url-bol kiturkasztam-, de kenyelmesebb lenne a post)
-
#3786 Próbáltam idézőjelek nélkül próbáltam kombinálni szenvedtem már mindenhogy! De hát lustaság fél egészség :)
Nem tudom miért de tegnap is este jött meg a kedvem megirni a regisztrációt pedig este nem tudok figyelni és alapvető problémákat csinálok :)
Ez a mail függvény minden féle képpen beteszi ezt az üzi elejére:
Reply-To: [email protected]
Message-Id: <20061024175239.A7D43E38414@xyz_server.hu>
Date: Tue, 24 Oct 2006 19:52:39 +0200 (CEST)
Vagy ez valahogy eltüntethető? Gyanítom hogy a $fejlecek hatására kerül bele csak ha meg nem teszem bele névtelen levél érkezik és ha valaki szeretne válaszolni esetleg a levélre akkor ciki a dolog :)
Amúgy köszi ismét a helpet Faustus :) -
#3785 "Csúnán fogsz rám nézni"
[csúnyán néz, és valami súlyos tárgyat (fa-testápoló) keres rendszabályozás céljából]
"Warning: mail() expects at least 3 parameters, 1 given in"
Figyelem! a mail() [függvény] 3 paramétert igényel, 1 lett megadva (körülbelül szabadfordításban ezt jelenti)
Nos lássuk miért is van:
mail("'$email', '$subject', '$message http://valami.eu/confirm.php?id=$id&secret=$psecret $message2', '$fejlecek'");
Mi a lópikulának kell a mail függvénybe az összes paramétert közrefogó idézőjel? Pláne minek a paramétereket aposztrófok közé tenni?
Tehát a kód:
$fejlecek = "From: [email protected]\r\nReply-To: [email protected]\r\n";
$subject = "tárgy";
$message1 = "bla bla bla";
$message2 = "még több bla bla bla";
mail($email, $subject, $message."http://valami.eu/confirm.php?id=".$id."&secret=".$psecret.$message2, $fejlecek);
Grrr... mail() függvény leírása -
#3784 A színeket nem így akartam összeválogatni de aki ért hozzá tud a sorok között is olvasni :) -
#3783 Adódott egy másik probléma :)
$fejlecek = 'From: [email protected]' . "\r\n" . 'Reply-To: [email protected]' . "\r\n" ;
$email = ("[email protected]");
$subject = ("tárgy");
$message1 = ("bla bla bla");
$message2 = ("még több bla bla bla");
mail("'$email', '$subject', '$message http://valami.eu/confirm.php?id=$id&secret=$psecret $message2', '$fejlecek'");
[/szin=green]
Erre ezt a hibaüzit kapom:
[szin=red]Warning: mail() expects at least 3 parameters, 1 given in
Ami valami olyasmit jelenthet (nem pontosan) hogy 3 paramétert adtam meg de csak 1-et lehet!
Szal valahogy össze szeretném füzni az üzenetet valahogy így:
Üzenet1 aktiválólink Üzenet2
Mivel az üzenet 1 illetve üzenet2 egy nyelvi fájlban van ami majd megy a fordítókhoz ezért nem tudom egybe rakni 1 tömbe az üzenetet!
Valahogy pont segítségével kéne összefűzni de fingom nincs hogy hogy! Ha valaki érti a problémát pls help me! (Faustus bízok benned)
nem elég hogy az elöbb nem csatlakoztam az adatbázishoz de még nem is választottam ki az adatbázist és a mysql kérésben is hiba volt de megoldodott szal köszi faustus az irányt hogy a hibát hol keressem :) -
#3782 Csúnán fogsz rám nézni ha aztmondom, hogy alapvető hibát vétettem? :) Megirtam mindent adja az adatokat adatbázishot és rá kellet jönni, hogy már az elején kihagytam egy érdekes dolgot ami eddig fel se tünt mert annyira természetesnek tartottam :D
Nem csatlakoztam az adatbázishoz :) -
#3781 Honann tudod, hogy mysql hiba? mert mysql hibánál rinyálna hogy pl nem tud csatlakozni a kiszolgálóhoz vagy nem tud adatot irni vagy egyébb :) ezért gyanús a dolog :) -
#3780 Most már mysql hiba van a dologban... a POST metódussal elküldött adatok átmennek (Viva la LiveHTTPHEaders Firefox Extension!)
A privát üzenetben kapott URL meg nem csoda, a GET metódus hozománya. -
#3779 get átirva postra tömbökből szedem ki az adatot így:
$username = $_POST["username"];
$pass = $_POST["pass"];
$pass2 = $_POST["pass2"];
$email = $_POST["email"];
$email2 = $_POST["email2"];
a probléma még mindig fennt ál viszont most vettem észre a felső érdekes urlt ami privátban ment az adatok miatt......
-
#3778 Az űrlap elküldési módja legyen post:
<form action="index.php?id=takesignup" method="post">,
és az űrlapadatokat a $_POST["xyz"] tömbből szedd ki, ahonnan az xyz az űrlapmezőktől (name attribútum) függő érték. -
#3777 Van egy nagy problémám megpróbálom leirni mert bonyolult és lehet hogy hülyeséget is csináltam!
http://valami.eu/index.php?id=signup
ez egy ürlap!
<form method="get" action="index.php?id=takesignup"> <---ez van megadva az ürlapba
menüből adódik hogy switc get megoldású a dinamikus menüm és az indexben meg meg van adva ez:
# Signup
case "takesignup":
include "menu/takesignup.php";
break;
(ez helyesen van megadva a többi menüpont müködik)
Szal a probléma hogy a főoldalra ugrik vissza és nem adja át az adatokat a takesignup.php-nak ebből következik hogy a regisztrációnál nem végzi el a feladatát a takesignup.php!
Valaki érti egyáltalán miről beszélek? :D -
Anotino #3776 Persze, mivel egy szem valtozoba teszed az ertekeket, azok mindig felulirodnak es csak az utolso ertekek maradnak meg. Pakold egy tombbe.
deklaracio (a while elott):
$thread_time=array();
elem hozzaadasa (ez megy a lenti while ciklus magjaba):
$thread_time[]=akarmi;
elemek elerese a tombben: $thread_time[0], $thread_time[1], .. stb. vagy egyeb modon pl foreach-el
-
#3775 !!! nem jó, valamért csak az utolsó bejegyzést érem el :(