Hirdetés
- Samsung Galaxy S23 Ultra - non plus ultra
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Yettel topik
- Bemutatkozott a Poco X7 és X7 Pro
- Samsung Galaxy A52s 5G - jó S-tehetség
- Android 16-ra nyitott az egyik legmenőbb csukható
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Dupla kamerával menekülne az iPhone Air a kaszától
- iPhone topik
Új hozzászólás Aktív témák
-
[HUN]Tyson
senior tag
válasz
vakondka
#1660
üzenetére
Á, bonyolult. Nem akarok én magamnak herce-hurcát.
A lényeg, hogy egy kis kvízt szeretnék elhelyezni a honlapra: egyszerű form, ami tartalmazza a név mezőt, emailt, kérdésekre a választ radiobox-szal, és ezt kellene eljuttatni hozzám. Kézenfekvőnek tűnt a mail(), de javasoljatok vmi mást, hogy lehetne ezt megoldani!
-
VladimirR
nagyúr
válasz
vakondka
#1530
üzenetére
az a sor arra valo, hogy ha 301-es, vagy 302-es HTTP kodot kapsz vissza, akkor a curl megy tovabb szo nelkul a kapott url-re
igy, ez nalad nem fog megtortenniket lehetoseged van:
- hasznalod igy es nem csak a 200-as kodot fogadod el, hanem a fenti kettot is (moved temporarly es moved permanetly)
- megirod, hogy ha a fenti ket kod valamelyike tortent, olvassa ki az url-t a header-bol es menjen utanaa harmadik az lenne, hogy lelovod a safe_mode-ot, de ha jol ertettem, nem igazan tudsz belenyulni a server config-ba
-
mm00
aktív tag
válasz
vakondka
#1528
üzenetére
fsockopen
function isOnline($url) {
if (!$url_info = parse_url($url)) {
return false;
}
switch ($url_info['scheme']) {
case 'https':
$scheme = 'ssl://';
$port = 443;
break;
case 'http':
default:
$scheme = '';
$port = 80;
}
$data = "";
$fid = @fsockopen($scheme . $url_info['host'], $port, $errno, $errstr, 30);
if ($fid) {
fputs($fid, 'HEAD ' . (isset($url_info['path'])? $url_info['path']: '/') . (isset($url_info['query'])? '?' . $url_info['query']: '') . " HTTP/1.0\r\n" .
"Connection: close\r\n" .
'Host: ' . $url_info['host'] . "\r\n\r\n");
while (!feof($fid)) {
$data .= @fgets($fid, 128);
}
fclose($fid);
return !empty($data);
} else {
return false;
}
}Curl:
function page_exists($url){
$parts=parse_url($url);
if(!$parts) return false; /* the URL was seriously wrong */
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
/* set the user agent - might help, doesn't hurt */
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)');
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
/* try to follow redirects */
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
/* timeout after the specified number of seconds. assuming that this script runs
on a server, 20 seconds should be plenty of time to verify a valid URL. */
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 15);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
/* don't download the page, just the header (much faster in this case) */
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_HEADER, true);
/* handle HTTPS links */
if($parts['scheme']=='https'){
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
}
$response = curl_exec($ch);
curl_close($ch);
/* get the status code from HTTP headers */
if(preg_match('/HTTP\/1\.\d+\s+(\d+)/', $response, $matches)){
$code=intval($matches[1]);
} else {
return false;
};
/* see if code indicates success */
return (($code>=200) && ($code<400));
} -
cucka
addikt
válasz
vakondka
#1501
üzenetére
Olyat tud, hogy kilistázza a különböző fileokat, dupla klikkre megmutatja a különbségeket (ez ugyanaz, mint a "compare by content") funkció és utána amikre beállítottad, azokat szinkronizálja. Azért használható nagyon jól, mert amikor 2 file különbségeit nézed, a szinkronizáló ablak a helyén marad, tehát szépen sorba lehet menni a fileokon.
-
mm00
aktív tag
válasz
vakondka
#1477
üzenetére
Nem tudtam tesztelni próbáld ki!
Ha a $mod értéknek 1et adsz be, akkor mindkét boxra alkalmazza, ha semmit akkor csak a felso boxra, ha nem adsz be cellpadding a paramnál semmit akkor mindkettőre az alapértelmezettet teszi be!
$info_box_contents = array();
$info_box_contents[] = array('text' => $categories_string,
'params' => 'class="boxText"');
new infoBox($info_box_contents,$cellpadding,$param,$mod=1);class infoBox extends tableBox {
function infoBox($contents, $table_cellpadding=1, $table_parameters='class="infoBox"', $mod=0) {
$info_box_contents = array();
if($mod == 1){
$info_box_contents[] = array('text' => $this->infoBoxContents($contents, $table_cellpadding, $table_parameters));
}else{
$info_box_contents[] = array('text' => $this->infoBoxContents($contents));
}
$this->table_cellpadding = $table_cellpadding;
$this->table_parameters = $table_parameters;
$this->tableBox($info_box_contents, true);
}
function infoBoxContents($contents,$table_cellpadding=3,$table_parameters='class="infoBoxContents"') {
$this->table_cellpadding = $table_cellpadding;
$this->table_parameters = $table_parameters;
$info_box_contents = array();
$info_box_contents[] = array(array('text' => tep_draw_separator('pixel_trans.gif', '100%', '1')));
for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
$info_box_contents[] = array(array('align' => (isset($contents[$i]['align']) ? $contents[$i]['align'] : ''),
'form' => (isset($contents[$i]['form']) ? $contents[$i]['form'] : ''),
'params' => 'class="boxText"',
'text' => (isset($contents[$i]['text']) ? $contents[$i]['text'] : '')));
}
$info_box_contents[] = array(array('text' => tep_draw_separator('pixel_trans.gif', '100%', '1')));
return $this->tableBox($info_box_contents);
}
} -
T.Jones
tag
-
huskybusky
csendes tag
válasz
vakondka
#1261
üzenetére
Valóban véletlenül utf-8-ban mentettem a formot. Visszaállítottam, és így az eredeti mail.php-val már helyesen írta a kapott email-ben a betűket. Kösz.
Viszont most kicsit összezavarodtam, hogy akkor ha ki akarom íratni a sikeres, vagy sikertelen küldést, pontosan mi is legyen a mail.php tartalma.
Igérem, hogy ha összejön abbahagyom a fárasztásotokat és veszek egy php-könyvet. -
Panther
HÁZIGAZDA
válasz
vakondka
#1260
üzenetére
Ha jól értem akkor az a baj hogy az elküldött levélben nem jelennek meg jól a fájlba "hard-kódolt" szövegrészek; ezen pedig nem segít, ha a HTML oldalhoz headert rak. Ezen vagy az segít hogy ezt a fájt is olyan kódolásban menti, mint amit mindenhol használ, vagy átáll full UTF8-ra, és az mb_send_mail fügvénnyel dolgozik.
-
huskybusky
csendes tag
válasz
vakondka
#1245
üzenetére
Kipróbáltam amit fentebb javasoltál, és ha külön fájlban teszem fel a formot akkor szépen ki is ír mindent. Ha a 1246-os beírásomban szereplő linken található lapról akarom elküldeni a formot, akkor ezt írja ki a képernyőre: Array( )
Ezután újra felraktam a tőled eredetileg kapott mail.php-t:
<?php
$targy = "Levelem tárgya";
$szoveg = "A levél feladója: " . $_POST['name']."\n";
$szoveg .= "A küldő email címe: " . $_POST['email']. "\n";
$szoveg .= "Üzenet: " . $_POST['message'];
mail("email@címem.hu",$targy,$szoveg);
?>Ha a különálló lappról küldöm el az űrlapot, akkor jön szépen az email (ezer köszönet érte)
és benne van minden ami kell. Az egyedüli zavaró dolog csak a már fentebb is írt ékezetes és pontos betűk kuszasága. (Magában az üzenetben helyesen hozza a betűket.) Csak ez nem jó:A levĂŠl feladĂłja:
A kĂźldĹ email cĂme:
Ăzenet:Eredetileg úgy szerettem volna elhelyezni az űrlapot, ahogy a linken látszik, de valamit eléggé elszúrhatok a beillesztésénél, vagy nem is tudom...
Köszönök minden segítséget. Már csak egy utolsó kérdésem lenne.Ha csinálok egy html lapot, (pl.sikeresuzenet.html) amiben tudatom a küldővel, hogy az üzenet elküldése sikeres volt, akkor azt hogyan tudom betenni a függvénybe? -
huskybusky
csendes tag
válasz
vakondka
#1238
üzenetére
Tudom, hogy most már unalmas vagyok az űrlapommal együtt, de még mindig nem működik nálam a dolog. Tehát feltettem ezt :
<?php
$targy = "Levelem tárgya";
$szoveg = "A levél feladója: " . $_POST['name']."\n";
$szoveg .= "A küldő email címe: " . $_POST['email']. "\n";
$szoveg .= "Üzenet: " . $_POST['message'];
mail("email@címem.hu",$targy,$szoveg);
?>Most az van, hogy kapok mailt, aminek van tárgya, és a levélben ez van:
A levĂŠl feladĂłja:
A kĂźldĹ email cĂme:
Ăzenet:Amúgy kösz a türelmeteket.
-
-
huskybusky
csendes tag
válasz
vakondka
#1230
üzenetére
Tehát megcsináltam az általad leírtakat,
<?php
$targy = "Levelem tárgya";
$nev = "A levél feladója: " . $_POST['name']."\n";
$email .= "A küldő email címe: " . $_POST['email']. "\n";
$uzenet .= "Üzenet: " . $_POST['message'];
mail(''email@címem.hu'',"Levelem tárgya",$name.$email.$message);
?>de sajnos csak ez a hibaüzenet jön fel:
Parse error: syntax error, unexpected T_STRING in /nfs/extra/webcímem/wwwroot/mail.php on line 6
Van valami ötleted? -
huskybusky
csendes tag
válasz
vakondka
#1228
üzenetére
Igen, a küldő nevét, email címét, és az üzenetét szeretném megkapni emailben.
A levél tágya nincs benne az űrlapomban, sajnos rosszul írtam a mail.php-t. (Bocs)
Valójában ezt próbáltam először, és így nem működött.
<?php
$nev = $_POST['name'];
$email = $_POST['email'];
$uzenet = $_POST['message'];
mail(''email@címem.hu'',$name,$email,$message,);
?>Kösz a választ, megpróbálom.
-
Tele von Zsinór
őstag
válasz
vakondka
#1210
üzenetére
Az injection ellen is véd, meg hogy a spec karakterek is helyesen kerüljenek be. Nálam a db osztály escape függvénye így néz ki:
if (get_magic_quotes_gpc()) $input = stripslashes($input);
return @mysql_real_escape_string($input,$this->connection);És ezt hívom meg minden alkalommal, amikor usertől származó adatot rakok bele query stringbe. Kivételek persze vannak: ha valamit sokszor használok, akkor inkább egy külön változóba escapelem, és azt az értéket rakom stringbe, mert a plusz memóriafoglalással is hatékonyabb, mint ennek a többszöri meghívása

-
fordfairlane
veterán
válasz
vakondka
#1210
üzenetére
Most olvasom a felhasználók kommentjeit, és vannak köztük érdekesek:
"Remember to slash underscores (_) and percent signs (%), too, if you're going use the LIKE operator on the variable or you'll get some unexpected results."
Úgy tűnik, hogyha nagyon precízek akarunk lenni, akkor saját escape függvényt kell csinálni, mert ez a példa csak a LIKE paraméterre vonatkozik.
-
fordfairlane
veterán
válasz
vakondka
#1210
üzenetére
Én nem szoktam ezeket a függvényeket használni. A mysql_real_escape_string leírása szerint backslash-t szúr a következő karaterek elé:
\x00, \n, \r, \, ', " és \x1aAz addslashes pedig a következők elé: \, ', ". Nem tudom, hogy szükség van-e a mysql_real_escape_string-re, ezen még nem gondolkodtam el, de lehetséges.
Ami a sprintf-et illeti, a haszna abban van, hogy típuskonverziót is kikényszerít, így egy numerikusnak várt érték, ami valami hiba vagy hack miatt nem numerikus, nem fog query hibát okozni. Én nem szoktam használni a sprinf-et, integernél általában a query-be beszúráskor explicit típuskonverziót adok meg, ha tudom, hogy csakis az adott típus lehet, pl. jelen esetben integert várok:
$query .= 'tipus='.(int)$p['tipus'];
Ez már inkább programozási stílus kérdése, hogy ki melyiket használja.
-
fordfairlane
veterán
válasz
vakondka
#1208
üzenetére
Bizonyára ez történt. A magic_quotes_gpc szerverenként változó, jellemzően a PHP 5-ben nincs bekapcsolva, így ide a bevitel során kell az addslashes, régebbieknél PHP 3 - 4 pedig általában be van kapcsolva, így ide fölösleges. Kiírásnál levő felesleges stripslashes (tehát addslashes bevitelnél, stripslashes kiírásnál, magic_quotes_gpc off) nem feltűnő, csak akkor okoz problémát, ha a szövegben szerepel backslash, például elérési út, ilyenkor eltűnik a backslash a tartalomból.
Ha portábilis kódra törekszem, akkor én így szoktam csinálni:
Mivel a form submit adatai nem feltétlenül kerül bele egyből az adattáblába, mert pl. nincs kitöltve egy kötelezően kitöltendő mező, ezért én úgy szoktam kezdeni, hogy a $_POST tömböt átmásolom egy másik tömbbe, és ha a magic_quotes_gpc be van kapcsolva, akkor kiszedem az általa beillesztett backslasheket.function n_slashes($p) {
foreach($p as $pkey => $pvalue) {
if(get_magic_quotes_gpc()) $post[$pkey] = stripslashes($p[$pkey]);
else $post[$pkey] = $p[$pkey];
}
return $post;
}
if($_SERVER['REQUEST_METHOD'] == 'POST') {
$p = n_slashes($_POST);
...
}Form submit esetén meghívom ezt a függvényt, azután eldöntöm, hogy beleírom-e az adattáblába vagy sem. Ha beleírom, mert minden adat megfelelő, akkor minden mezőre egyenként addslashes-t alkalmazok, ha nem, akkor kirakom újra a formot, és visszaírom a bevitt adatokat. Ez a módszer mindenféle beállítással működik.
-
fordfairlane
veterán
válasz
vakondka
#1204
üzenetére
Nem értem, de mindegy, nem feszegetem a témát. Én úgy látom, hogy teljesen felesleges addslashest használni, mert látszik, hogy backslashek kerülnek az adatbázisban elmenetett stringekbe, amit persze kiíráskor ki kell szedni. De akkor már egyszerűbb bele sem rakni. Szerintem egyszerű a helyzet, a magic_quotes_gpc be van kapcsolva, az addslashes pedig megduplázza a backslasheket, ezt korrigálja a stripslash. Vizuális editor ide vagy oda.
-
fordfairlane
veterán
válasz
vakondka
#1200
üzenetére
Nem értem, miért kell használni a stripslashest kiíráskor? Az adatbázisba bevitelkor, mivel idézőjelek közt adsz meg stringértékeket, amik idézőjeleket is tartalmazhatnak, ezért a stringváltozók tartalmát escape-lni kell a backslash karakterrel.
Két eset van: Vagy a PHP megcsinálja automatikusan, ha a magic_quotes_gpc opció be van kapcsolva, ebben az esetben semmit nem kell csinálni beíráskor, vagy pedig, ha kikapcsolva van, akkor kell az addslashest használni. Kiíráskor már sehol nem lesz felesleges backslash karakter, azt kapod, amit submittal elküdtél a szervernek, amit beírt az adatbázisba.
-
Siriusb
veterán
válasz
vakondka
#1183
üzenetére
Szia!
Hátha egyből tudod a választ, mert én rengeteg kínlódás után sem tudtam megoldani:
van az index.php, ahogy javasoltad. Ebben található egy swf és egy png beillesztve. Az swf - amikor új tartalom töltődik be a linkek alapján - villan egyet, tehát eltűnik egy pillanatra, visszajön, s kezdi elölről a lejátszást. A lejátszás újrakezdése még nem lenne baj, de ez a villanás zavaró.
Van erre tipped, miként lehet kiküszöbölni? -
vancha2
aktív tag
válasz
vakondka
#1155
üzenetére
Ezt a SELECT LEFT-es megoldást nem is ismertem. És így hogy tudom kiírni őket:
$db = mysql_query("SELECT LEFT('nev',1) FROM 'tabla'");
while($sor = mysql_fetch_array($db)) {
// Itt hogy tudom kiírni a betűket?
}Elnézést, ha hülyeséget kérdeztem, de még nem vagyok a php+mysql mestere...

-
tbs
addikt
válasz
vakondka
#412
üzenetére
Hmmm... Párat kipróbáltam, szerintem smarty, de másnak biztos más tetszik. 90%-ban tetszés kérdése.

Jórészt smartyval dolgozom, ha php-s munka van. A felületeket egy grafikus lány szokta összerakni, én csak átalakítom smartyra. Azaz belerakom a ciklusokat a megfelelő helyre, meg kicserélem a konstans szövegeket változóra... Minden templétrendszer így működik. A smarty kielégíti a perverz programozó énemet.
Mindent meg lehet csinálni a templétrendszerekkel. Csak türelem kérdése...![;]](//cdn.rios.hu/dl/s/v1.gif)
-
tbs
addikt
válasz
vakondka
#410
üzenetére
Hmmm... A php-é meg nem..?
Semmi veszélyes nincs benne, elhiheted. Php szemszögből hamar átlátható, könnyen lehet oop-s logikára ráépíteni, kiváló debug outputja van, stb. Arra viszont vigyázni kell, hogy a templatek-be ne sok logikát tegyen az ember: a smarty ''túl'' okos... -
#41337088
törölt tag
válasz
vakondka
#300
üzenetére
Szerintem, az, hogy nekem eleinte csak 1 fájl volt és benn volt a html-e egy png header, miután kettészedtem, nemtudom miértnem működött egyből - talán bennmaradt valami a gyorsítótárban?
vagy nemistudom
NEm járok tanfolyamra, csak vettem egy debug express-t és majd kínkeserves tutorialok-útján megtanulom
legalább annyira, hogy egy tanfolyam, vagy könyv szintjén legyek.... a chipcad szokott indítani, meg a hobbielektronkások is csináltak már -
vancha2
aktív tag
válasz
vakondka
#237
üzenetére
Mondjuk a submit gombnál onclick eseményre javascripttel először elküldöd a formot, majd a gombot disabled-re állítod, így nem lehet mégegyszer megnyomni. Mondjuk ez nem php...

Szerk: Most fogtam föl teljesen a kérdést
: hogy frissítéssel se lehessen elküldeni? Ez engem is érdekelne... 
[Szerkesztve] -
tkazmer
addikt
Új hozzászólás Aktív témák
- ASUS TUF A15 FA507 - 15.6"FHD 144Hz - Ryzen 7 7435HS - 16GB - 1TB - Win - RTX 4050 - 2+ év garancia
- iKing - Samsung Galaxy A56 5G 5G sebesség, nagy kijelző, stabil üzemidő 8/256 GB
- Asus TUF A15 FA507NUR 15.6" FHD IPS Ryzen 7 7435HS RTX 4050 16GB 512GB NVMe magyar vbill gar
- iKing - Xiaomi 14T Pro Titan Gray Vékony, prémium kivitel, nagy kijelző 12/512
- Samsung NX300 MILC + 18-50mm + 50-200mm
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- iKing.Hu - Nubia Z70 Ultra 5G Black Teljes kijelzős zászlóshajó, AI-erejű teljesítmény
- Lenovo Thinkpad 13 G2 Intel i3-7100 laptop (hiányos, de működik)
- HIBÁTLAN iPhone 13 Pro Max 256GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3755, 100% Akkumulátor
- B650/X670 DDR5 alaplapok kedvező áron garanciával!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
ha működött velük akkor nincs gond 




![;]](http://cdn.rios.hu/dl/s/v1.gif)
)



: hogy frissítéssel se lehessen elküldeni? Ez engem is érdekelne...



