Új hozzászólás Aktív témák
-
vakondka
őstag
válasz Sk8erPeter #1907 üzenetére
Ha jól tudom ezt nem lehet megoldani...ne használj egyedi betűtípust.
https://toptarget.hu - Online Marketing Ügynökség
-
vipisti
tag
válasz Sk8erPeter #1907 üzenetére
Meg lehet csinálni Javascript, CSS és Flash alkalmazásával, a technológia neve sIFR. Persze ezt inkább címek megjelenítéséhez érdemes használni, nem bekezdésekhez.
Gnothi seauton.
-
vipisti
tag
válasz Sk8erPeter #1911 üzenetére
Mindenesetre ajánlom figyelmedbe ezt az oldalt: fontburner.com. Szinte csak kopi-pésztelni kell.
Gnothi seauton.
-
vipisti
tag
válasz Sk8erPeter #1913 üzenetére
A FP-t nem ismerem, ez a csv-zés valami saját hülyesége. A <form method="POST" action="--WEBBOT-SELF--"> sorban a actionnal adod meg azt a fájlt, aminek a post paramétereket átadod, ez általában valami szkript, pl. php. Amennyire értem, neked nem kell form (nem is kell elhagynod az oldalt), JS-sel meg lehet oldani az ugrást. (konkrét megoldás esetleg később, sajna most nincs rá időm)
Gnothi seauton.
-
Sk8erPeter
nagyúr
válasz Sk8erPeter #1913 üzenetére
Hátha valakit érdekel, leírom a megoldást, közben sikerült rájönni.
Az alábbi az, ami MŰKÖDIK! NEM nyit új ablakot, és nem is ugrik rögtön a menü elemeinek kiválasztására, tehát miután kiválasztottad az elemet, a gombnyomás hatására ugrik adott "könyvjelzőre" (#valami és #enter a "könyvjelzők" nevei):
<form>
<select name="mittudomén" size="1">
<option value="#valami">Valami</option>
<option value="#enter">Enter</option>
</select>
<input type="button" value="Ugrás" onclick="window.location=this.form.mittudomén[this.form.mittudomén.selectedIndex].value">
</form>Mivel ott az onclick.
Ez pedig olyan, ami egyből menükiválasztásra ugrik:
<select name="urls" size="1" onchange="window.location=this.options[this.selectedIndex].value">
<option selected label=" Válassz! " value="">Válasszá'!</option>
<option label="Valami" value="#valami">Valami</option>
<option label="Enter" value="#enter">Enter</option>
</select>Üdv
PeteSk8erPeter
-
No-kia
őstag
válasz Sk8erPeter #1948 üzenetére
akkor megemlíthetted volna a többi helyesírási hibát is, nem ez volt a főszempont, siettem
Nokia 500 | Ford Sierra 2.0i | Dell N5010
-
tkazmer
addikt
válasz Sk8erPeter #1955 üzenetére
szervertől és programtól függ, megfelelő (szerver)beállítások mellett totalcommanderrel elméletileg megoldható.
úgy tervezték, hogy kibirjon egy atomtámadást is. De nekünk komolyabb fegyvereink vannak, mint pl Béla bá, a földmunkagépkezelő
-
harry3
őstag
válasz Sk8erPeter #1957 üzenetére
Belépsz a TC-be. Hálózat--->FTP kapcsolódás--->Új kapcsolat: Meg kell adni az adatokat, kapcsolat neve, felhasználónév, jelszó. A felhasználónév az amivel belépsz az ATW-n, ha jól tudom itta az oldal neve http:// és atw.hu nélkül, tehát simán az oldal neve. A jelszó, pedig amivel az ATW-n belépsz. Kész is és már csak kapcsolódni kell. Ha sikerül, csak az egyik oldalról áthúzod ide a fájlt.
-
harry3
őstag
válasz Sk8erPeter #1959 üzenetére
Jól van bocsánat.
Persze, lehet rendezni és átnevezni is a fájlokat, mappákat. -
harry3
őstag
válasz Sk8erPeter #1961 üzenetére
Az átnevezés: rákattintasz egyszer a fájlra vagy mappára és beírod az új nevet.
Másolás: Mindkét oldalt megjeleníted a tárhelyen lévő mappákat és kattints a fájlra F5 és megadod a célt. -
Sk8erPeter
nagyúr
válasz Sk8erPeter #1955 üzenetére
tkazmer kolléga időközben megírta, hogy atw-nél elvileg nem lehet áthelyezni a fájlokat a szerverbeállítások miatt.
(Ő legalább értette, mi volt a kérdés )Sk8erPeter
-
harry3
őstag
válasz Sk8erPeter #1963 üzenetére
Különben nem a Weblap készítésben van a helye: Ftp kérdések és válaszok
Senki sem lehet tökéletes, de lehet hogy vannak tökéletes emberek is. Tudod hibázni emberi dolog, de ezt nem így kellene más tudtára adni, főleg ha segíteni akar neked. Én legalább megpróbáltam...
Cseszegetés és vitatkozás befejezve.[ Szerkesztve ]
-
Sk8erPeter
nagyúr
válasz Sk8erPeter #1982 üzenetére
Lehet, hogy csak azonos könyvtárban valósítható meg a dolog? Vagy ez csak atw-nél (és esetleg egyéb ingyenes tárhelynél) van így - reklámcsík frame-je bezavar?
Ha azonos könyvtárba rakom a zenéket, az swf-et és a html-t, amiben a kód szerepel, amiben csak simán az mp3 nevét adom meg, mint azonos könyvtárban lévő fájlt, akkor működik. De ha már másik atw-s címre hivatkozom, akkor nem megy.
Ez csak azért gáz, mert akkor a főkönyvtárban szereplő http://akarki.atw.hu/akarmi.html fájlból csak iframe-ként vagy egyéb gányolással tudom berakni a flash-es lejátszót (nem szeretném a főkönyvtárba dobálni az összes mp3-at és egyebet).Van kerülő megoldás, vagy csak így oldható meg?
Majd kipróbálom reklámcsík nélküli ingyentárhelyen is (pl. 000webhost).
Sk8erPeter
-
Sk8erPeter
nagyúr
válasz Sk8erPeter #1983 üzenetére
Kipróbáltam reklámcsík nélküli ingyenes tárhelynél (000webhost), és ott a flash-lejátszó a kereszthivatkozásokkal ellátott fájlneveket is gond nélkül lejátssza.
A probléma tehát az atw idióta frame-es formátumú reklámcsíkjával van.Szóval végül is megválaszoltam magamnak a kérdést.
Bocs a "hangos" gondolkodásért.Sk8erPeter
-
Skynet258
veterán
válasz Sk8erPeter #1984 üzenetére
Egy kis megjegyzés: hagyjátok az atw-t, az extrát, meg a többi suttyó helyet; vagy lassúak, vagy odab*sznak egy nagy dög reklámot... számomra egyik sem szimpatikus...
Nekem egy ideje fő szempont, hogy gyors legyen, elég nagy legyen a tárhely, és ne legyen reklám. Elrontja az egész oldal kinézetét.
Külföldi host-ból jó például az általad is mondott 000webhost, annyi bajom van velük csupán, hogy szó nélkül törölték az accomat. Sem e-mail, se dögölj meg, csak eltűntek az oldalaim, és megszűnt a fiókom. Pedig nem volt rajta semmi warez vagy pornó, arra gyanakszom, hogy azért lehetett, mert nem angol nyelvű (ezáltal le se tudták ellenőrizni, mi van az oldalakon).
Szóval jó lehet, de fenntartásokkal és biztonsági mentésekkel ajánlott kezelni!A legtutibb pedig magyar, méghozzá a newhosting. Jó ideig még csak nem is hallottam róla, nem annyira populáris, mint a többi. Viszont ez garantáltan a legjobb, gyors, nincs reklám, elég a tárhely, és mindig megy.
Én egy jó ideje ezt használom, azóta nincs problémám
Jah, egy "negatívum" lehet: csak saját domainnel lehet menni, de igazából aki komolyabb oldalt akar, az úgyis vesz valami .info domaint, az meg 1-2 dollár körül kapható godaddy-n.
Remélem segítettem valakinek a fentiekkelhttps://geekpulse.hu
-
Skynet258
veterán
válasz Sk8erPeter #1992 üzenetére
Persze, nem mindenkinek felel meg ugyanaz Csak arra szerettem volna rávilágítani, hogyha van az embernek 2 dollárnyi pénze erre (ez ma 378 Ft), akkor vesz egy info domain-t, és van lehetőség bekerülni egy valóban jó, magyar illetőségű tárhelyre.
400 pénzt szerintem megér, még akkor is, ha csak próbálgatja az ember az oldalkészítést (mint pl. én magam is).
De mondom, megértelek, az igények változóakhttps://geekpulse.hu
-
Frenky89
őstag
válasz Sk8erPeter #2062 üzenetére
Jó ötlet, THX!
-
cucka
addikt
válasz Sk8erPeter #2083 üzenetére
A "php4 24 óra alatt" könyvet inkább ne. Nem túl színvonalas, emellett erősen elavult.
-
cucka
addikt
válasz Sk8erPeter #2086 üzenetére
Azért, mert felületesen magyaráz, az egész gyorstalpaló jellegű. És igen, a php megtévesztő, mert nagyon könnyű benne programozni, de eléggé észnél kell lenni, ha normális minőségű kódot szeretnél kiadni a kezed közül.
-
cucka
addikt
válasz Sk8erPeter #2088 üzenetére
Nekem a "php fekete könyv" nagyon tetszett, de láttam egy piros borítós, brutálisan vastag php könyvet is, ami jó volt, a címére már nem emlékszem.
-
zotya678
csendes tag
-
vancha2
aktív tag
válasz Sk8erPeter #2094 üzenetére
Szerintem próbáld ki a Clearbox-ot. Egyszerű és jól néz ki.
-
ReAm1
csendes tag
válasz Sk8erPeter #2097 üzenetére
Kösz a válaszokat!
Igen, már más is ajánlotta a div , css , ajax kombót. De kezdő vagyok és nincs meg a tudásom ezekhez.
Ez a ClearBox olyasminek tűnik mint egy iFrame (belső frame).
Minden böngésző rendesen kezeli a Clearboxot ,rendesen működik ?
Nem a saját bőrömön szeretném megtapasztalni a hibáit ...
Köszi! -
BloodRay
veterán
válasz Sk8erPeter #2126 üzenetére
Amit linkeltél kialakítás, az lett abból ahogy te készítetted?
Az is jó lenne nekem is természetesen.
Holnap tüzetesebben is átnézem a dolgot, mert az nem állapot, hogy csak a tűzróka viszi.
Addig is nagyon köszönöm a segítséget, még majd mondom, hogy sikerült.
Főháttér megváltoztatásán már én is gondolkoztam, ha lesz időm és találok megfelelőt lecserélem."A gép pentium 4-es. Mit mondjak még róla?! Leírom mégegyszer. PENTIUM 4." -► Henky83
-
BloodRay
veterán
válasz Sk8erPeter #2128 üzenetére
Már olvasgatom a te leírásod, meg letöltöttem a hiányzó playlistes csomagot.
Remélem estére lesz időm összedobni."A gép pentium 4-es. Mit mondjak még róla?! Leírom mégegyszer. PENTIUM 4." -► Henky83
-
Sgt.Randall
aktív tag
-
raczger
őstag
válasz Sk8erPeter #2155 üzenetére
Remélem nem értelmezlek félre, tehát:
Ha jól tudom akkor google a Lynx-et használja, ami egy eléggé fapados, még csak nem is grafikus felületű böngésző, ami nem támogatja a frame-t, meg szerintem az ilyen jellegű ajax-os megoldásokat sem. Szóval ebből az irányból megközelítve nem túl okos döntés ilyet rakni a weboldalakba.
A PHP include azért picit más (elmagyaráznám, hogy miért, ha értelmesen meg tudnám fogalmazni, de azt hiszem most nem menne ).
A lényeg, hogy szerintem érdemes ezeket kerülni, bár vannak esetek amikor esztétikusabb, ha pl Ajax-ot használunk, meg még akár felhasználóbarátabb is lehet. (Egyébként az lehetséges, hogy van olyan megoldás is ebben az esetben, ami nem jelent hátrányt a keresőkkel szemben, pl ha fájl berakása helyett szöveget rakunk bele, akkor az megjelenik az oldal forráskódjába, a javascriptben és akkor szerintem a Lynx is észreveszi, persze lehet hogy hülyeség amit írok )[ Szerkesztve ]
www.movat.hu - http://bit.ly/2mIziA4
-
ArchElf
addikt
válasz Sk8erPeter #2157 üzenetére
Ajax tipikusan webalkalmazásokra jó, ahol a felhasználónak úgysem kell nyomgatnia a back gombot (ha pedig megnyomja az neked le kell kezelni, különben szerencsétlen nem tudja, honnan hova került)... Akkor is érdemes lehet használni, ha valamiért nem szeretnéd, hogy letöltött oldal bekerüljön a history-ba (pl dinamikusan generált URL esetén), de ez is csak szépségtapasz, hiszen magában az oldal kódjában benne van a link (de legalább a hálózati forgalomból elcsíphető), úgyhogy ha valaki nagyon vadászik az URL-re, akkor azt úgyis meg tudja szerezni.
AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
válasz Sk8erPeter #2159 üzenetére
Mondjuk az Ajax és a PHP két külön dolog (php szerver oldali kód, míg az ajax kliens oldali). AJAX: Asynchronous Javascript And XML. Tehát kliens oldalion kérsz le a szerverről XML dokumentumot (ami az esetek nagy részében XHTML), és belerakod egy kiválasztott HTML DOM elembe.
Pl egy levelezőrendszer webes megvalósításánál előnyös lehet, lásd OWA (Outlook Web access): az egyik frame-ben látod a leveleid, az alatta levő frame-ben megnyílik az épp kiválasztott levél. Ilyenkor az egész oldalt - levelező mappák, levelek listája, megnyitott levél - újratölteni tejesen felesleges, ráadásul a teljes újratöltés valószínűleg eléggé frusztrálná a felhasználót is - persze van erre más megoldás is az ajax-on kívül (link megnyitása másik frame-be).
Aztán van az az eset, amikor egy legördülő menü kiválasztott eleme alapján töltjük fel a következő legördülő menüt. Ha mindent letöltesz egyszerre, az több legördülő menünél és terebélyesebb adatmenyiségnél elég nagy plusz méretet jelent. Viszont ha csak mindig azt töltöd le, ami a választásod alapján releváns, sávszélességet lehet spórolni (ez mind kliens, mind szerver oldalon fontos lehet). Webalkalmazások esetében súgó funkcióknál is szokták ez alkalmazni (tooltip szerű lebegő div a kurzor mellett, ami pl az adott mező funkcióját tárgyalja). Ha az összes elemre készítenél külön tooltip-div-et, akkor szintén sokkal terebélyesebb lenne a letöltendő oldalad.AE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
válasz Sk8erPeter #2161 üzenetére
Most hogy válaszoltál, rájöttem, hogy egy alapvető felhasználási módot kifelejtettem.
Ez már (kicsit) a webservice kategóriájába tartozik: amennyiben adatot kérsz le egy szerverről ami nagy számítási vagy adatfeldolgozási igénnyel bír, lehet, hogy nem férsz bele a HTTP/Adatbázis/stb. timeout-ba. Ez ki lehet küszöbölni rendszeres asszinkron js http státusz lekérésekkel, és amikor kész az eredmény azt letöltöd az előzőekben leírt módon.
Nagyjából így néz ki:
1 - elküldöd a kérést a szervernek (általában adatot POST-olsz fel) asszinkron módon (ergo nem frissíted a lapot)
2 - beraksz egy folyamatjelzőt (mondjuk progress bar-t) a felhasználónak, hogy lássa hol tart a folyamat
3 - rendszeresen lekérsz (szintén asszinkron módon) egy oldalt ami az aktuális lekérés státuszát mutatja (ezt szerver oldalon kell folyamatosan frissíteni) - az abban található adatok alapján frissíted a felhasználói felületet (progress bart)
4 - amikor készre vált a státusz a szerveren, a kliens a státuszlekérés helyett lekéri (szintén ajax) az elkészült adattartalmat, amit megjeleníti.AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
válasz Sk8erPeter #2163 üzenetére
Sajnos az adatbázis kezelője problémázza el neked a dolgot. Ugyanis a háttérben a feltöltés tovább tart, mint az adatbázis kérés.
Nagyjából az alábbi lehetőségek vannak az tábla zárolására, hogy megvárd a feltöltési tranzakciót:
- feltöltéskor tábla szintű lock - ha zárod a táblát, akkor amíg valaki hozzászólást tölt fel, a táblát nem lehet lekérni a művelet befejezéséig (tábla feltöltése + indexek frissítése)
- feltöltéskor rekord szintű lock - amikor zárolod a táblát, akkor amíg valaki hozzászólást tölt fel, a táblának azt a sorát nem lehet lekérni. Ha ez is beleesik a lekérésbe akkor, jobb esetben várakozik a lekérés a zárolás idejére, illetve ha ez sokáig eltart, dob valami hibát.Legegyszerűbb azonban az, hogy az üzenet adatbázisba feltöltése után váratsz a felhasználóval 3-5 mp-et (valami "A lap 5mp-en belül átirányításra kerül, ha ez mégsem történne meg, nyomja meg a tovább gombot."). Ezalatt az adatbázis-művelet nagy valószínűséggel ténylegesen lezajlik.
AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
válasz Sk8erPeter #2163 üzenetére
Progress bar:
http://www.raditha.com/php/php-upload.php
http://hup.hu/node/64958
http://development.finetooth.com/?p=11AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
Sk8erPeter
nagyúr
válasz Sk8erPeter #2167 üzenetére
Még egy: nem lehet pontosan ugyanígy az adatbázis-lekérés gyorsabb futása miatt ez az oka ennek a problémának?
Sk8erPeter
-
Sk8erPeter
nagyúr
válasz Sk8erPeter #2168 üzenetére
Rájöttem, hogy valszeg az adatbázis-betöltődéshez semmi köze, mert attól még a javascriptes függvényt a böngésző beolvassa, a linkre kattintva pedig a függvény az onclick miatt meghívódik, tehát MIUTÁN már betöltődött az oldal, le kell futnia a függvénynek a meghívás miatt. Az meg is történik, de helytelenül, mert külön megnyitja azonos ablakban a képet. Nem tudom, mi lehet az oka, hiszen egyik helyen tökéletesen megy, míg másikon nem, a lényegi különbség meg pedig a két oldal között igazából csak annyi, hogy több tartalom van, és a tartalom lekérése adatbázisból történik...
Sk8erPeter
-
cucka
addikt
válasz Sk8erPeter #2172 üzenetére
Ha egyszerű php-s űrlap feldolgozásról és html kiírásról van szó, akkor valószínűleg rossz a php kódod.
Ha ajax-osan csinálod, akkor előfordulhat, mert az ajax szóban az első a betű azt jelzi, hogy aszinkron. Tehát a szerver nem tud üzenni a kliensnek, hogy befejezte a feladatot, a kliensnek kell kérdezgetnie a szervert. -
cucka
addikt
válasz Sk8erPeter #2174 üzenetére
Elolvastam többször, de ennyiből nem tudom eldönteni, mi a hiba, elvileg jó kéne legyen. Ha mutatsz valami kódot, megnézem pontosan.
Egyben a POST változókat is üres stringgel teszem egyenlővé.
Hajmeresztő. Ilyet nem csinálunk. Szerintem nem is működik, bár nem próbáltam. -
Sk8erPeter
nagyúr
válasz Sk8erPeter #2176 üzenetére
Bocsi, kis dolgom akadt közben, mostanra tudtam csak eljutni odáig, hogy bemásoljam a kódrészletet.
Időközben kipróbáltam a megfelelő javascriptes frissítő kóddal, amit igazából már korábban is mutattam, de azt még úgy írtam be, hogy valójában "könyvjelzőt" / horgonyt tettem mögé (vagy hogy hívják ezt, amikor az oldalon belüli részre hivatkozol, és arra tudsz ugrani), így nyilván nem frissült.
De a # jel mögötti címet elhagyva jól működik. Vagyis az alábbi sorok legalább félmegoldást jelentettek a problémára:<script language="javascript">
<!--
alert("A hozzászólás elküldése sikeres volt! Köszönjük!");
window.location = "http://oldalcim.hu/blabla?p=oldal";
//--></script>Ez attól még mindig csak félmegoldás, mert a form elküldése után ugye frissít egyszer, majd kiírja a megköszönő üzenetet, és amikor azt a júzer leokézza, akkor megint frissít egyet. Vagyis kétszeri frissítés szükséges a hsz. megtekintéséhez (ez automatikusan történik, de akkor se az igazi).
Ezért bemásolom a kódrészletet, szóljatok, ha találtok hibát - amire van esély, légyszi szóljatok, ha láttok valami hibás vagy sántító részletet!
Csak a lényeget emeltem ki, és kommenteltem az egyes függvényrészeket a könnyebb érthetőség kedvéért.____________________________________________________________________
Így hívom meg://előtte blabla...
echo '<div id="urlap" style="display: none;">';
if ( false === urlap_feldolgozo_vendegkonyv( $hibasztring ) )
{
$hiba = 1;
}
else {$hiba = 0;}
echo '</div>';
if ( $hiba == 1 )
{
echo 'Hiba történt a hozzászólás elküldésekor! <br />';
echo "<br /><span class=\"hiba\">$hibasztring</span>";
}____________________________________________________________________
Aztán maga a függvény (jó hosszú...):
function urlap_feldolgozo_vendegkonyv( &$hibasztring )
{
// extract($_POST); //most nem használom
$hidden = $_POST['hidden']; /* van a formban egy <input type="hidden" name="hidden" value="check"> sor... */
if ($hidden != "check" && !isset($elkuld) )
{
$a = rand(1,9);
$b = rand(1,9);
$c=$_SESSION['c']=$a+$b; //$c ÖSSZEG értéke
urlapkeszito_vendegkonyv($a, $b, $nev, $email, $honlap, $comment);
/* az űrlapkészítő függvény a hozzászóláshoz - a paraméterezés majd a későbbiekben lesz érdekes (itt még csak a random számok miatt): ha a felhasználó az űrlap elküldése előtt nem töltötte ki teljesen a formot (hibaüzeneteket kap), akkor legyen elmentve a hozzászólása, ne kelljen még egyszer megírnia ugyanazt */
}
elseif ( ($hidden == "check") && isset($_POST['elkuld']) && ($_POST['nev']!='') && ($_POST['comment']!='') )
{
$nev = $_POST['nev'];
$email = $_POST['email'];
$honlap = $_POST['honlap'];
$comment = $_POST['comment'];
$c_erteke = $_SESSION['c'];
$szam = $_POST['szam'];
$hidden = ''; //üres sztring legyen, hogy ne küldje el újból az adatot :-?
$nev_hiany = $hsz_hiany = $szam_hiba = $datum_hiba = $send = '';
if (empty($nev))
{
$nev_hiany = 'Adja meg a nevét! <br />';
$send = 'no';
}
if (empty($comment))
{
$hsz_hiany = 'Nem írta meg a hozzászólást! <br />';
$send = 'no';
}
if ( $szam != $c_erteke )
{
$szam_hiba = 'Rossz számot adott meg a biztonsági ellenőrzés során! <br />';
$send = 'no';
}
if (false === datumkeszito($datum))
{
$datum_hiba = 'Hiba történt a dátum készítése során! <br />';
$send = 'no';
}
if ($honlap == 'http://') //ha a honlapot végül nem írta be, akkor csak üres stringet küldjön el
$honlap = '';
if ( $send != 'no' ) //ha nem találtunk hibát, akkor mehet az adatbázis feltöltése
{
if (false !== adatbazis_bovites_hozzaszolas ($nev, $datum, $email, $honlap, $comment))
//ha az adatbázis feltöltése sikeresen megtörtént
{
session_destroy();
$nev=$comment=$hidden=$email=$honlap='';
$szam=0;
/* mindent nullázunk, hogy ne töltse ki ezekkel az adatokkal az űrlapot, a számot is 0-ra állítjuk, hogy F5-ös frissítés esetén a böngésző ne próbálja ugyanazokat a POST értékeket elküldeni, ahol a random szám adott esetben még akár meg is egyezhet az előzővel, ekkor pedig elküldené még egyszer az előző adatokkal a hsz.-t (az űrlap paraméterezése miatt, és a böngészőben tárolt POST adatok miatt... */
echo 'A hozzászólás elküldése sikeres volt! Köszönjük! <br />';
//frissítse az oldalt, hogy látható legyen a hsz. a vendégkönyvnél, ha valaki hozzászólt; köszönje meg... :-D
echo '
<script language="javascript">
<!--
alert("A hozzászólás elküldése sikeres volt! Köszönjük!");
window.location = "http://az_ominozus_honlap.hu/index.php?p=guestbook&lang='.$_GET['lang'].'";
//--></script>';
urlapkeszito_vendegkonyv($a, $b, $nev, $email, $honlap, $comment); //ismét elkészítjük a formot
return true;
}
else
{
echo 'Hiba történt a hozzászólás elküldése során!';
$a = rand(1,9);
$b = rand(1,9);
$c=$_SESSION['c']=$a+$b;
urlapkeszito_vendegkonyv($a, $b, $nev, $email, $honlap, $comment);
return false;
}
}
else if ($send == "no")
{
$a = rand(1,9);
$b = rand(1,9);
$c=$_SESSION['c']=$a+$b;
urlapkeszito_vendegkonyv($a, $b, $nev, $email, $honlap, $comment);
$hibasztring = $nev_hiany . $hsz_hiany . $szam_hiba . $datum_hiba;
return false;
}
}
}[ Szerkesztve ]
Sk8erPeter
-
Sk8erPeter
nagyúr
válasz Sk8erPeter #2180 üzenetére
Az elején, az "urlap" div-nél a style egyébként azért van CSS-ben display: none -ra állítva, mert egy javascriptes függvény nyitja meg, amikor szükség van rá, addig nem látszik (gombbal hívható elő).
Sk8erPeter
-
cucka
addikt
válasz Sk8erPeter #2180 üzenetére
Átnéztem a kódodat, marhára túlbonyolítottad, tele van fölösleges dolgokkal. Amúgy még nem jöttem rá, mitől nem működik, de van benne pár hiba.
Például a függvényed elején aif ($hidden != "check" && !isset($elkuld) )
sorban a második feltétel mindig igaz lesz, valószínűleg ez problémát fog okozni. Továbbá nem értem, hogy ha ott van a javascript-es átirányítás, akkor miért készíted el olyan sokszor az űrlapot, pontosan egy helyen kéne meghívni összesen azt a függvényt.
Itt egy egyszerű struktúra, hogy én hogyan oldanám meg a problémát:
<?php
$error_str='';
$elkuldve=0;
if (isset($_REQUEST['hidden'] && $_REQUEST['hidden']=='check'){
//megnyomtak az elkuldes gombot
$error_str=adatok_ellenorzese($_REQUEST);
if ($error_str==''){
//az adatok jok
adatok_betoltese_az_adatbazisba($_REQUEST);
}
$elkuldve=1;
}
if ($elkuldve && $error_str==''){
print 'A hozzászólás sikeres volt';
} else {
uzenofal_form_kiirasa($_REQUEST, $error_str);
}
?>A függvények hívásánál látható, hogy milyen paraméterekre van szükségük ahhoz, hogy megcsinálják a dolgukat. Az $error_str változóban található a hibaüzenet, a $elkuldve változó tartalmazza azt, hogy éppen megnyomták-e a küldés gombot vagy sem.
Az ellenőrzésnek és az adatbázis betöltésnek szüksége van a felhasználó által elküldött adatokra, a form kiírásának pedig az elküldött adatokra és a hibastringre. Természetesen ha még nem küldtek el semmit, akkor a $error_str üres lesz, $_REQUEST tömbben pedig nem lesznek ott a megfelelő értékek.
Az adatok ellenőrzése a hibaüzenettel tér vissza, értelemszerűen ha nincs hiba, akkor a hibaüzenet üres lesz. Természetesen egyszerű szöveg helyett használhatsz bonyolultabb struktúrát is.[ Szerkesztve ]
-
Louloudaki
aktív tag
válasz Sk8erPeter #2183 üzenetére
$_REQUEST működési példa:
<?php
$_GET['foo'] = 'a';
$_POST['bar'] = 'b';
var_dump($_GET); // Element 'foo' is string(1) "a"
var_dump($_POST); // Element 'bar' is string(1) "b"
var_dump($_REQUEST); // Does not contain elements 'foo' or 'bar'
?>
szerintem nem tanácsos használni, mert így hogy bármit benyal a kód és feldolgozza ami jön bárhonnan, az elég veszélyes. -
cucka
addikt
válasz Sk8erPeter #2183 üzenetére
Igazából az alapprobléma ezzel sem oldódott meg, de nem gáz, a javascriptes oldal-újramegnyitás nem olyan vészes megoldás, igazából annyi különbséget jelent, hogy így kb. 1 másodperccel később látja a hozzászólását a vendégkönyvben.
Szerintem pedig meg kéne oldja. Furcsa, hogy az adatok késleltetve jelennek meg az adatbázisban..A $_REQUEST használata egyébként nem veszélyes? Nem jobb inkább konkrétan a $_POST vagy $_GET változóknak átadott értékeket használni, mint a "kettő egyvelegét"?
Nem. A request tömbben a post, a get és a cookie tömbök tartalma található. Mindegyik a felhasználótól jövő, megbízhatatlan adat, ezért teljesen mindegy, hogy külön kezeled a post-ot és a get-et vagy egyben, az adatokat ugyanolyan szigorúan kell ellenőrizni.
Akkor lehet gond, ha a post-ban és a get-ben ugyanolyan névvel két különböző értéket szeretnél kezelni, de ezt amúgy is illik elkerülni.Még egy kérdés eszembe jutott a múltkori Ajax-os témáról, aminek nagy hátránya az, hogy a Google nem tudja rendesen indexelni az oldalt: akkor ez az indexelési probléma ezek szerint felmerül azoknál az oldalaknál is, ahol csak egy index oldal $_GET-tel átadott értékei szerint include-olok fájlokat?
A google annyit lát az oldaladból, mint a böngésző, amivel nézed. Nem látja, hogy azt a html oldalt te milyen php kóddal készítetted, mit hogyan include-oltál, igazából azt sem tudja, hogy a kapott html-t milyen módon állította elő a webszerver.(#2184) Louloudaki
Kezdjük ott, hogy a $_GET['foo'] = 'a'; sorra egy normális programozási nyelv már fordítás előtt hibát dobna. A példád pont azt demonstrálja, hogy miért ordas nagy gányolás, ha a szuperglobál tömböket nem úgy kezeled, mint ha csak olvashatók lennének.
A php a post-ba, a get-be és a cookie-ba is bármit benyal, ha ezt a 3 tömböt egyesíted, akkor megkaptad a request tömböt. Szerintem ugyanannyira nem biztonságos, mint külön kezelni a get-et vagy a post-ot. -
cucka
addikt
válasz Sk8erPeter #2186 üzenetére
Indexeléssel kapcsolatban: akkor ezek szerint tök mindegy, hogy $_GET változókat rakok-e az index.php mögé, attól még a Google ugyanúgy tudja tárolni az adatokat és a hozzátartozó címet is a $GET értékekkel kiegészítve?
A google az url-t látja és a html-t, amit a php kódod gyárt.
Természetesen a
http://logout.hu/tema/weblap_keszites/friss.html
sokkal jobban "tetszik" a google-nek, mint mondjuk egy ilyen:
http://logout.hu/tema/?tema_id=1234321&show=4324321Ebben az esetben amúgy teljesen érdektelen, hogy mit hogyan include-olsz a php kódodban, vagy include-ot használsz-e vagy valami mást és így tovább, semmi köze az egészhez. Van egy url, arra bejön egy html oldal, azt kívülről senki nem látja, hogy az url alapján milyen mechanizmusok alapján lesz legyártva az a html kód.
(#2187) Louloudaki
Nekem nem egyértelmű a példa. Ha a post-ban ott a "foo", a get-ben pedig a "bar", akkor a request-ben ott lesz mind a kettő, ellentétben azzal, amit a példádban írtál. Ha a post-nak és a get-nek kézzel állítod be a scriptedben az értékeket, akkor képzelhető el, hogy a request tömb nem tartalmazza az új értékeket, de ilyet ugye nem csinálunk . Tulajdonképpen egyáltalán nem értem, hogy mit szerettél volna demonstrálni a példa kóddal .Amúgy azt nem állítottam, hogy mindig minden esetben megfelelő a request használata, pl. loginnál valóban nem szerencsés, ha elfogadja az url-ben megadott paramétereket, de az űrlapok többségénél lényegtelen kérdés.
[ Szerkesztve ]
-
fordfairlane
veterán
válasz Sk8erPeter #2183 üzenetére
A $_REQUEST a következő tömböket tartalmazza: $_GET, $_POST, $_COOKIE . Ha egyedi azonosítókat használsz, használhatod az aggregált $_REQUEST-tet is. Mindegyik "veszélyes", mindhárom tömb a klienstől származó adatokkal van feltöltve, tehát manipulálható annak tartalma, egyedül annyi a különbség, hogy a különálló tömböknél a tömb neve egyben azt is jelzi, hogy melyik protokoll szerint lett az adott paraméter tárolva a kliens oldalon.
[ Szerkesztve ]
x gon' give it to ya
-
zotya678
csendes tag
válasz Sk8erPeter #2202 üzenetére
Pontosan erre gondoltam köszi
-
zotya678
csendes tag
válasz Sk8erPeter #2202 üzenetére
És ezt valaki megtudja írni? Segítség nélkül. (pl a google nélkül) Mert ennyi parancsot nehéz megtanulni. De ahogy "olvastam" a kódot sok volt az ismétlődés, nem lehet nehéz (lehet hogy most nagy baromságot mondtam )
-
zotya678
csendes tag
válasz Sk8erPeter #2205 üzenetére
Akkor a Javascript az minden naptár menü vagy egy látogató számláló megírására alkalmas nyelv?
-
cucka
addikt
válasz Sk8erPeter #2210 üzenetére
3 GB-ot valóban INGYEN, reklám nélkül, kötelező bannerhirdetés nélkül tudtommal sehol nem kapsz Magyarországon, apróbetűs részektől és átvágástól mentesen. Ritka az ilyesmi manapság, értékelni kell...
Igazából ilyenkor mindig felmerül a kérdés, hogy ez hol éri meg nekik? -
cucka
addikt
válasz Sk8erPeter #2220 üzenetére
Ha ismeri is, nem javaslom a használatát. Mondjuk a jó ízlés miatt. Vagy hogy elkerüljük a vizuális környezetszennyezést.
A böngészők az animált gif-eket is támogatják, mégsem javaslom, hogy néhány vicces animált gif-el dobjuk fel a weboldalainkat, mert az már 10 éve is nagyon ciki volt -
ArchElf
addikt
válasz Sk8erPeter #2220 üzenetére
Oké, ismeri, de nem hivatalos HTML tag, és a támogatottság is bármikor kikerülhet a nem-IE böngészőkből.
AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
Plero
tag
válasz Sk8erPeter #2227 üzenetére
Semmi mást csak a "Entire HTML Source code"-ot másoltam és tettem fel és nem müködik. A képeket is lementettem és feltettem. Lehet a szolgáltatómnál nem működik az AJAX?
A másik linket meg megnézem. Köszönöm. Majd referálok."Olyan nincs, hogy nincs" + www.plenter.atw.hu
Új hozzászólás Aktív témák
- Milyen billentyűzetet vegyek?
- Politika
- WLAN, WiFi, vezeték nélküli hálózat
- Gaming notebook topik
- Milyen processzort vegyek?
- Autós topik
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Kerékpárosok, bringások ide!
- BIOS topic
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- További aktív témák...
- Újszerű (AB) Macbook Pro 14" M1 Pro 512/ 16GB USA
- iPad 9th. 64GB Wifi/Mint Az Új/2025.03.02.Apple Gar./Akku 100%/p3389/
- BESZÁMÍTÁS! Lenovo Thinkcentre M720S i5 16GB 1TB SSD számítógép garanciával hibátlan működéssel
- BESZÁMÍTÁS! HP Omen 15 15 FHD Gamer notebook - i7 10750H 16GB RAM 1TB SSD RTX 2070 8GB WIN
- Lenovo Thinkpad T495 Ryzen 5 PRO 3500U/16GB RAM/256 SSD/14" FULL HD garanciás laptop eladó
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Promenade Publishing House Kft.
Város: Budapest