- Elképesztő mértékben tömörítenék be a nagy nyelvi modelleket
- Radeon RX 9060 XT: Ezt aztán jól meghúzták
- Atomenergiával dübörögnek tovább az Amazon adatközpontok, SMR-ek is jöhetnek
- Macron betiltatná az EU-ban a közösségi médiát a 15 év alattiaknak
- Az NVIDIA ipari AI-felhőt épít a németeknek, együtt az OpenAI és a Google
Új hozzászólás Aktív témák
-
pumatom
aktív tag
Sziasztok!
Volna egy véletlen képgenerátorom, ami egy megadott mappában elhelyezett képeket kattintásra cserél.
....
<?php
$imglist='';
$img_folder = "images/pic/";mt_srand((double)microtime()*1000);
$imgs = dir($img_folder);
while ($file = $imgs->read()) {
if (eregi("gif", $file) || eregi("jpg", $file) || eregi("png", $file))
$imglist .= "$file ";} closedir($imgs->handle);
$imglist = explode(" ", $imglist);
$no = sizeof($imglist)-2;$random = mt_rand(0, $no);
$image = $imglist[$random];echo '<h1 style="font-family:courier new; font-size:45px;"> Test...</h1></style><br><br><a href="' . $_SERVER['PHP_SELF'] . '"><img src="' . $img_folder . $image . '" border=3 </a>';
....A kérdésem az lenne, hogy mivel kellene bővítenem, hogy a megjelenített képet a neve szerint a címsorba is megjelenítse, hogy linkelhető legyen?
Köszi a segítséget előre is!
Üdv!
-
krokk
senior tag
köszi ez szerintem jó lesz.
azt hittem hogy ez kicsit népszerűbb probléma és gyorsabban lesz rá válasz meg googliban is hiába keresgéltem, valahogy sosem ez a probléma volt a téma.más: ajax lett látom az új probléma kör.
üzenőfallal küzdöklatin-2es az adatbázisom és a fájlok kódolása is.
én is az újratöltést ajaxxal oldottam meg. viszont postnál ahogy a dokumentáció mondja csak és kizárólag utf-8ban tud küldeni... nem lehet kijátszani sehogy nem? vgay getre kell váltanom, vagy pedig mentés előtt át kell alakítanom utf-8ról... jól gondolom? -
L3zl13
nagyúr
Ha mindenképpen a szerverrel akarsz adatot cserélni újratöltés nélkül, arra mondjuk az Ajax jelenthet megoldást.
A második kérdésre pedig: POST, GET, COOKIE, SESSION.
Azt mondod az adatbázisba írás már megy. Mivel a form action mezőjébe nem írtál semmit, ezért ugyanezt a php fájlt hívod meg és adod át neki a form adatait. Ha az actionbe beírnál egy másik php fájlt, akkor annak adódnának át az adatok, és ott ugyanúgy felhasználhatnád őket.
Ha egy PHP változót akarsz így átadni, akkor előtte bele kéne íratnod a változó értékét egy form elembe.A többi módszert most nem részletezem. Olvasgass utána akár itt a topicban, akár tutorialokban.
-
radmin
csendes tag
Sziasztok!
Csináltam egy oldalt, ami tele van form elemekkel, illetve gombokkal.
Itt egy nem teljes részlet belőle:
<form action="" method="POST">
<input type="text" name="ttext" />
<input type="submit" name="badd" value="Add" />
<select size="5" name="top[]" multiple="multiple" >
ciklus
</select>
</form>Azt szeretném elérni, hogy amikor rákattintok az Add gombra, akkor ami benne van a ttext nevű mezőben, azt belevési az adatbázisba (eddig megy is a dolog), majd csak egy függvény fusson le, amiben egy SELECT van. Ennek az eredményét írja ki a top[] nevű űrlapelembe.
Nem szeretném, ha a teljes oldalt újratöltené.Van erre megoldás, ha van, miképp?
Egy másik kérdés:
Van egy változóm. Annak az értékét hogyan tudom átadni egy másik php fájlban lévő scriptnek?A segítséget előre is köszönöm!
radmin
-
L3zl13
nagyúr
Bizonyára nem tökéletes megoldás, de a php.net-en a preg-match-all() függvénynél van egy viszonylag egyszerű példakód.
Ez HTML tagokra van írva, de könnyen átalakítható BB Code-ra is.
<?php
/**
* Find and close unclosed xml tags
**/
function close_tags($text) {
$patt_open = "%((?<!</)(?<=<)[\s]*[^/!>\s]+(?=>|[\s]+[^>]*[^/]>)(?!/>))%";
$patt_close = "%((?<=</)([^>]+)(?=>))%";
if (preg_match_all($patt_open,$text,$matches))
{
$m_open = $matches[1];
if(!empty($m_open))
{
preg_match_all($patt_close,$text,$matches2);
$m_close = $matches2[1];
if (count($m_open) > count($m_close))
{
$m_open = array_reverse($m_open);
foreach ($m_close as $tag) $c_tags[$tag]++;
foreach ($m_open as $k => $tag) if ($c_tags[$tag]--<=0) $text.='</'.$tag.'>';
}
}
}
return $text;
}
?>
Forrás: [link]Nyilván a különböző komplex modulokkal nem versenyképes.
-
L3zl13
nagyúr
válasz
Tele von Zsinór #5191 üzenetére
Mint mondtad: kérdés a célközönség.
A véletlen hibák kiszűrésére alkalmas egy WYSWYG szerkesztő.
Rosszindulatú hackerpalántákra nem. -
x123456
aktív tag
válasz
Tele von Zsinór #5192 üzenetére
Ezt ismételgetem már ki tudja hanyadszor: "csomag felhasználása/megírása"
Szóval egyről beszélünk. -
Tele von Zsinór
őstag
válasz
x123456 #5190 üzenetére
Részben igazad van, de lehet használni kész libeket is. Olyanokra értem, amik tudják javítani a kódot, hogy ne legyen például lezáratlan tag, a Pear-ban is van hasonló, de ha jól sejtem az is megoldható, hogy egy DOMDocument objektumba betöltöd, amit akarsz, aztán megkéred, hogy csináljon belőle normális kódot. Pár hónapja kezdtem el kísérletezni a php dom objektumaival, eszméletlenül rossz kódot is szépen megevett, és utána tudtam elemezni xpath-kifejezésekkel.
-
x123456
aktív tag
Ö... izé... az örök kötekedő (úgy értem: én
) : OK, hogy a szabvány felületen az 1.0-s user nem tud átadni semmi hülyeséget. De mi van a rosszindulatú, de némileg szakértő userekkel?
Ja igen, most látom a zárójeles részt... szóval akárhogy töröm a fejem, mindig oda lyukadok ki, hogy ha engedni akarja valaki a HTML-t, akkor azzal együtt jár, egy tisztességes HTML v. BBcode ellenőrző csomag felhasználása/megírása is.
Rosszul gondolom? -
krokk
senior tag
úgy szerettem volna ahogy itt is működik (illetve úgy is van) hogy bbkód is használható meg a szerkesztővel te is gyárthatsz mint itt is gombokkal.
de lehet a te ajánlatod lesz az igazimivel akkor nem kell törődni azzal amit kézileg írnak be
csak azt kell akkor már vizsgálni hogy kikapcsolta e a js-t vagy sem -
L3zl13
nagyúr
A WYSWYG szerkesztőben te elvileg nem látsz semmilyen TAG-et. Sem BB Code-ot, sem HTML taget se akármi mást. Csak azt látod, hogy amit írsz az utána vastag vagy dőlt betűvel íródik már a szerkesztő ablakban.
Semmilyen kézzel beírt kódot nem kell kezelned. BB Code-dal nem foglalkozol, a <-t meg a szerkesztő átalakítja <-vé, és így érvényteleníti a HTML taget is.Hogy mögötte szerkesztő a háttérben hogyan adja át a szövegetaz már mindegy, lehet akát normál HTML tagekkel is, mert a user nem tud < karaktert eredeti formájában átadni a scriptnek a szerkesztő megkerülésével (ami meg automatikusan átalakítja html entityre). (Legalábbis nem sima kézi beírással/szerkesztéssel. Amivel meg mégis, az meg egy egészen más probléma.)
-
krokk
senior tag
úgyértem hogy beleír egy plusz [ B ]taget nem arra céloztam hogy spec karatert ír bele
mod: persze rios kiegészíti
jah és persze most tök mindegy hogy bbcode vagy html tag... ha kihagyja akkor lényegtelen melyiket hagyja ki. ahogy már írtátok többször is át lesz konvertálva html taggé és a hiányzó mindkettőben hiányozni fog.
-
L3zl13
nagyúr
WYSWYG szerkesztőt elvileg nem lehetne így kicselezni, mert ha jól van megcsinálva, akkor a spec karaktereket (pl < >) HTML entitykkel (</>) helyettesíti, tehát hiába ír be a user HTML taget azt a böngésző szövegként is fogja értelmezni, és csak megjelenítésben lesz jó.
-
x123456
aktív tag
válasz
PazsitZ #5182 üzenetére
Akkor megint bele"szakértek"
A BBcode is HTML-ként jelenik meg, mire eljut a browserhez megjeleníthető formában.Te ugyan \[b\]-\[/b\] -t írsz a hozzászólásba, de ez legkésőbb, amikor megjelenik a hozzászólásod, már<b>-</b> -ként jelenik meg. Szóval az alapprobléma az valahol jogos.
(hogy lehet BBcode-ot tenni a szövegbe, hogy az ne interpretálódjon?)
-
krokk
senior tag
hát most hogy jól ki lett vesézve a bbcode vs html koncentrálhatnánk a kérdésre
amúgy bbcode-t használtam eddig, viszont most még gondolkozom a htmlre visszatérésre.
ezen cikk miatt: http://kore-nordmann.de/blog/do_NOT_parse_using_regexp.html
és amúgy itt van szó arról is hogy miért nem jó a regexptehát a probléma fenn áll végülis a bbcodenál is. mint ahogy itt is ki tudom törölni ott is ki tudják törölni. van wysiwyg szerkesztő is dehát azt is ki lehet cselezni
mert beleírhat szövegként is tageket. meg persze előszeretettel törlik ki véletlenül a már beírt taget.
egyelőre akkor maradt az hogyha nincs párja akkor hozzádobok még 1 et a végére?...
-
Tele von Zsinór
őstag
És kicsit az eredeti BBCode vs. HTML témához (csak így, nem válaszként): ismerni kell a közönséget, és annak fényében dönteni. Mikor blogmotort írtam magamnak, html-t használtam, egy sima textareába azt írtam, amit akartam. Kommenteknél egyértelműen bbcode volt, mentéskori konvertáláskor. Ennek most már több éve.
Újraíráskor már mindkét helyen a Markdown nyelvet lehetett használni egyszerűsége és olvashatósága miatt, bejegyzéseknél mindkét változat tárolásával, kommenteknél mentéskori konvertálással, és természetesen mentés előtt egy strip_tags hívással.
-
Tele von Zsinór
őstag
válasz
x123456 #5173 üzenetére
Az utólagos szerkesztést többféleképp lehet megoldani:
- csak az eredetit tárolod - szerkesztés egyszerű, de minden oldallekéréskor konvertálni kell
- tárolod az eredetit és a konvertáltat is - hasonlóan egyszerű, gyorsabb, de több a helyigénye
- csak a konvertáltat tárolod, és szerkesztéskor visszaalakítod - azon az elven, hogy a szerkesztés egy viszonylag ritka művelet. megjelenítés egyszerű és gyors, szerkesztéshez viszont a visszaalakítást is meg kell oldanodAz említett időkorlátos szerkesztésnél tudom azt elképzelni, hogy kezdetben az eredetit tárolod, ám van egy cronjob, ami a lejárt időkorlátos postokat konvertálja. Megjelenítéskor figyelni kell, konvertált-e már, de azt hiszem, ez az arany középút.
Az, hogy "általában", még nem mentség arra, hogy ne foglalkozzam vele
Főleg, ha ennyire egyszerű dologról van szó. Általában az az elv érvényesül, hogy a tárhely olcsóbb, mint a CPU-idő.
-
L3zl13
nagyúr
válasz
x123456 #5173 üzenetére
Nyilván függ az igényektől is, de az 1:1 szerkesztést megoldhatod úgy is, hogy eltárolod az eredeti és a konvertált verziót is külön táblákba. Szerkesztésre betöltöd az eredeti, módosítatlan változatot a szerkesztő ablakba. Megjelenítéskor meg a már konvertáltat.
Ez főleg ott lehet megoldás, ahol időkorlátos a szerkesztés.
-
Siriusb
veterán
válasz
DeltaPower #5157 üzenetére
kösz. és tényleg
-
Siriusb
veterán
válasz
DeltaPower #5157 üzenetére
dupla
-
x123456
aktív tag
válasz
Tele von Zsinór #5169 üzenetére
Ez igaz, viszont egy fórum v. hasonló szoftver esetében arra is kell gondolni, hogy a bevitt adatokat szerkeszteni szeretné a t. felhasználó, netán ragaszkodna hozzá, hogy 1:1-ben azt tudja szerkeszteni, amit egyszer beírt. Én ilyen meggondolásból írtam, hogy inkább a BB code-ot tárolnám.
Nomeg úgy vettem észre, manapság annyira nem foglalkoznak a szoftverek hardverigényével. -
L3zl13
nagyúr
válasz
Tele von Zsinór #5168 üzenetére
Na igen. Én is ez irányba gondolkodtam, csak kissé hadilábon állok a regexppel.
Így kapásból legalábbis egész biztosan nem próbálnám meg felvésni a szükséges pattern-t.
-
L3zl13
nagyúr
válasz
x123456 #5167 üzenetére
Soha nem mondtam, hogy ne BB Code-ot használjon. Csak arra akartam rávilágítani, hogy az önmagában nem oldja meg a problémát, amire a kérdés vonatkozott. Szerintem a kérdésből még az sem egyértelmű, hogy nem olyanokat használt-e már eddig is.
A DB-be beírás előtti konvertálás előnyeit meg már leírta Tele von Zsinór mester. Szóval ha fontos a hatékonyság, akkor ez sokkal kevésbé terheli az erőforrásokat.
-
x123456
aktív tag
Mondjuk tárolni a BB code-ot tárolnám eleve és csak a megjelenítéskor konvertálnék. De azt sem feltétlenül úgy, hogy egy string replace-szel kicserélem a BB code-ot HTML tag-ekre. De tény, ehhez is kell valami elemző, visszaforgató eszköz - akár már megírt, akár saját gyártású. Viszont lényegesen biztonságosabb, mint beengedni bármit egy megjelenítendő HTML kódba. (bocs, én csak mint ex rendszergarázda beszélek bele)
-
L3zl13
nagyúr
Heh.
A -><B> valójában [B]-><B> akart lenni, csak nem escapeltem ki rendesen. Szét is nyomta a hozzászólásom második felét.
És úgy tünik a RIOS is automatikusan beszúrt egy záró tagot a hozzászólásom végére, hogy ez ne menjen tovább a következő hozzászólásra, nem pedig a BB code akadályozta meg a dolgot. -
L3zl13
nagyúr
válasz
x123456 #5163 üzenetére
Én meg meg a te mondatodat nem értem.
Ahogy az előző hozzászólásban is leírtam. Attól, hogy a user BB code-ot használ bevitelkor, azt valamikor neked (az oldalnak) vissza kell fordítania HTML tagekre.
És ha a BB tag párosítatlan volt, akkor a belőle visszaalakított HTML tag is az lesz. És ha az eredeti probléma az volt, hogy a lezáratlan HTML tagek szétb@sszák a fórumot, akkor ez a probléma ugyanúgy fenn fog állni BB code-dal is. -
L3zl13
nagyúr
válasz
PazsitZ #5161 üzenetére
BB code-nál valóban nem írogatnak be a felhasználók közvetlenül HTML tageket, de a BB Code tageket valamilyen ponton úgyis át kell fordítanod HTML-re a megjelenítés előtt. Ezt vagy a DB-be írás előtt teszed meg, vagy közvetlenül megjelenítéskor.
Az most mindegy, hogy a BB-code-ot kézzel írja be a felhasználó, vagy gombnyomásra pakolja be, amíg látható, szerkeszthető és főként elrontható.
WYSWYG szerkesztővel tudod csak ezt kiküszöbölni, mert ott nem látszanak a felületen a TAG-ek és nem lehet kézzel "elrontani" őket.Ha csak simán str_replace-szel cseréled a BB tageket HTML tagekre (-><B>) és nem ellenőrzöd, hogy van-e lezáró párja, akkor ugyanúgy átlóghat a következő hozzászólásra a hatás.
Tehát ezt a problémát a BB code nem oldja meg. Igazából teljesen független tőle szerintem. -
L3zl13
nagyúr
válasz
PazsitZ #5159 üzenetére
És a BB-code mégis hogy oldja meg a problémát, ha utána egy str_replace-szel lecseréli őket, akár DB-be írás előtt, akár megjelenítéskor?
A tagek teljes letiltása meg nem éppen egy elegáns megoldás.
Ennyi erővel akkor inkább szúrjon oda minden hozzászólás végére egy lezárótagot mindenből.
-
krokk
senior tag
sziasztok
van arra valami megoldás, hogy user által begépelt szövegben a hiányzó tageket pótoljam?
persze azon kívül hogy végignézem hogy mindennek meg van e a párja és ha nincs akkor a szöveg végére beszúrom.
fórumnál van ez a gond, ha valaki kihagy egy záró tag-et akkor az hát megy végig a többi felhasználó szövegén is
köszi
-
Siriusb
veterán
Bocs a kérdésért, csak most kezdtem php-vel foglalkozni:
Miként tudom megfordítani a zzz tömbben lévő elemket az array_reverse segítségével?
$kacsa = array("a"=>1,"b"=>2,"c"=>3,"zzz"=>array(dd=>10,ee=>20,ff=>30)); -
SaNyEe
aktív tag
Épp fejlesztgetem a saját keretrendszerem, s nemrég futott velem szembe egy hasonló gond, ám teljesen más végett.
A lényeg, h kimegy a formra $misi tömb akkor mondjuk a te esetedben textarea-ba bemegy egyrészt $misi aktuális eleme és emellett lesz egy hidden típusú mező ahová szintén bemegy $misi aktuális eleme.
Submitkor pedig ezeket a mezőket hasonlítod össze. Ettől nyilván van sokkal elegánsabb, gazdaságosabb megoldás is, de nekem a konkrét problémára tökéletes.Persze ez a megoldás azt feltételezi, h nem korruptálták a formot. Létfontosságú adatoknál ne csinálj ilyesmit, vagy igen komolyan ellenőrizd és szűrd a bejövő adatokat.
Bár erre külön fölösleges felhívni a figyelmet, minden formnál így van -
L3zl13
nagyúr
válasz
ArchElf #5152 üzenetére
Attól még ugyanúgy vagy mindent updatelned kell vagy ellenőrizni, hogy lett-e aktiválva a mező. Kb ugyanaz melóban, mint amit én mondtam.
Szerk: Előnye mondjuk, hogy nem (vagy legalábbis nehezebben) tud az ember véletlenül módosítani valamit.
Hogy ez mennyire hasznos/mennyire zavaró az az adatoktól függ. -
ArchElf
addikt
Inkább akkor csinálj mindegyik mező mellé egy change gombot és a mezők alapértelmezetten legyenek disabled/readonly státuszúak. A gombokra rakot js pedig kapcsolgassa ezt ki/be ezt a státuszt a hozzá tartozó textarea elemeken...
AE
-
L3zl13
nagyúr
Most az a gond, hogy nem akarod update-elni azokat a mezőket, amiket nem módosítottak?
Gondot okoz ez? Nem éppen gazdaságos megoldás, de felteszem nem sokmilliós napi látogatószámra fejleszted az oldalt, hogy ennek jelentősége legyen.
Ha mégis meg akarod oldani, akkor javaslom a textfield-ekhez adja meg egy onchange eventet, ami beállít egy hidden mezőt. A mod.php-ben pedig ennek a hidden mezőnek az értéke alapján beszúrod az adott mezőt az update query-be vagy sem.
-
Speedo
tag
Üdv!
Szeretnék segítséget kérni: van egy form ami meghív egy mod.php-t a form-ba php-val adatbázisból olvasok ki és minden értéknek csinálok egy TextField-et valamint kap egy módosítás és egy törlés gombot is. Hogyan lehet beazonosítani hogy a felhasználó melyik textfield tartalmát szeretné módosítani vagy törölni, mikor rengeteg ugyanolyan textfield van amik persze különböző id-kel rendelkeznek, mit és hogyan adjak át a mod.php-nak?
-
L3zl13
nagyúr
válasz
Speeedfire #5146 üzenetére
Amint AE írta, ne futtasd kétszer fölöslegesen a lekérdezést.
+ Ellenőrizd, hogy volt-e eredménye a select-nek. Ha nem, akkor ne insertálj.Ehelyett:
if (!mysql_query($tabla,$con)) {
die('Hiba: ' . mysql_error());
}
$row2 = mysql_fetch_assoc(mysql_query($tabla));
$fid = $row2['id'];
$katid = $row2['sorszam'];Vmi ilyesmit:
if (!($result=mysql_query($tabla,$con))) {
die('Hiba: ' . mysql_error());
}
if(!(mysql_num_rows($result)>0)) {
die('A megadott nick és kategória nincs benne az adatbázisban.');
}
$row2 = mysql_fetch_assoc($result);
$fid = $row2['id'];
$katid = $row2['sorszam']; -
Speeedfire
félisten
-
ArchElf
addikt
válasz
Speeedfire #5144 üzenetére
Mi az adatbázis hiba, mit jelent az, hogy "rossz adatokat eredményez"?
Ráadásul kétszer futtatod le a query-t, miért jó az?
Add át az első query értékét egy változónak és dolgozz azzal utána.Ez meg igazi SQL Injection forrás:
WHERE ((linkek_users.nick = '".$_SESSION['nick']."') and (linkek_kategoria.kat = '".$_POST['kategoria']."'))";AE
-
Speeedfire
félisten
Lenne egy kis gondom.
Már egy ideje építgetem a kis linkelős oldalamat és most kb ~80 beküldött link után van 5 olyan ahol 2 adat nem kerül be az adatbázisba.
Elvileg ha nem sikerült az első lekérdezés akkor eldobja viszont ez úgy néz ki nem akar összejönni neki.$tabla = "SELECT linkek_users.id, linkek_kategoria.sorszam
FROM linkek_users, linkek_kategoria
WHERE ((linkek_users.nick = '".$_SESSION['nick']."') and (linkek_kategoria.kat = '".$_POST['kategoria']."'))";
if (!mysql_query($tabla,$con)) {
die('Hiba: ' . mysql_error());
}
$row2 = mysql_fetch_assoc(mysql_query($tabla));
$fid = $row2['id'];
$katid = $row2['sorszam'];
$_POST['szoveg'] = str_replace("\n","<br />",$_POST['szoveg']);
$webcimen = angol($_POST['webcim']);
$sql="INSERT INTO linkek_tartalom (fid,szoveg,katid,url,webcim,follow,webcimen,tags)
VALUES ('".mysql_real_escape_string($fid)."', '".mysql_real_escape_string($_POST['szoveg'])."',
'".mysql_real_escape_string($katid)."' , '".mysql_real_escape_string($_POST['url'])."' ,
'".mysql_real_escape_string($_POST['webcim'])."' , '".mysql_real_escape_string($_POST['radio'])."',
'".mysql_real_escape_string($webcimen)."', '".mysql_real_escape_string($_POST['tags'])."' )";
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
if (!mysql_query($sql,$con)) {
die('Error: ' . mysql_error());
}Az első lekérdezés valamikor rossz adatokat eredményez és ezáltal a következő "lekérdezésnél" már nincs értéke.
Ezt hogy lehetne megoldani h nem legyen adatbázis hiba? -
Speeedfire
félisten
válasz
Tele von Zsinór #5142 üzenetére
Sajnos a crontab nem megoldható. Jó nekem az admin felület is, vagy ha új tartalom beküldésekor mennyi idő telt el az utolsó backup óta és aszerint készít egyet. Ezt még majd megálmodom.
-
Tele von Zsinór
őstag
válasz
Speeedfire #5141 üzenetére
Ha adminfelületen csinálod a backupot, az el lesz felejtve. Legyen automatizálva crontabbal, töltse fel valahová, vagy küldje el mailban. Én az utóbbi megoldást használom.
-
Speeedfire
félisten
válasz
DeltaPower #5140 üzenetére
php-s melóra gondoltam, így admin felületen egyszerűbb, nem kell felmenni phpmyadmin-ra és ott kiválasztani h mit is szeretnék csinálni
a lényeg h megoldható de sok munka van vele
lehet h még nem tudom mibe kezdek de megpróbálom -
DeltaPower
addikt
válasz
Speeedfire #5139 üzenetére
mysqldump, vagy phpmyadminnal lemented. phpben megírni elég jó meló, bár meg lehet csinálni azt is, hogy simán csv-be lemented
-
Speeedfire
félisten
üdv!
Hogy lehet megoldani azt h egy adott adatbázist egy gombnyomásra lementsek? Biztonsági mentésre gondolok, amit le tudok menteni sajátgépre.
-
ArchElf
addikt
Input type="image" -nél nem a Value megy át (az csak megjelenítődik alterane-text-ként, ha a kép nem megjeleníthető...
Amúgy az Input type image valójában csak egy submit gomb, csak nem gomb kinézettel, hanem képként. Ezért nem úgy működik, mint a "normál" input típusok.
When the graphical submit button is clicked, the coordinates of the click are sent with the form submission as name.x=x-value and name.y=y-value where name is the value of the NAME attribute, x-value is the click's pixels from the left of the image, and y-value is the click's pixels from the top of the image.AE
-
Speeedfire
félisten
amúgy a get miért nem jó? én majdnem mindenhol azt használom, egy kis htacessel át is tudod alakítani, szerintem a post igazából ott hasznos/érdemes ahol olyan adatokkal dolgozol amik "titkosak"
pl
?oldal=kereses&mit=szereplo&ki=Al Pacinohelyett
szereplo/Al Pacino
vagy amit akarsz
biztos valami banálisan egyszerű dolog lehet, de nekem sem jut eszembe semmi jobb mint a get
-------------------------------------------------------------
látom közben te is get-tel oldottad meg -
j0k3r!
őstag
-
j0k3r!
őstag
válasz
Speeedfire #5133 üzenetére
lehet, hogy en nem vettem eszre valamit, de nem talaltam meg a linkben a megoldast, de:
print_r($_POST);
hatasara
ff, chrome, safari alatt:
Array ( [season_x] => 52 [season_y] => 13 [season] => s01 )
ie, opera alatt:
Array ( [season_x] => 71 [season_y] => 26 )szoval mostmar egyertelmu, hogy a $_POST["season"] ures :/
-
j0k3r!
őstag
hello!
amint mar fentebb irtam kepekre kattintva szeretnek adatot kuldeni post metodussal egyik php filebol a masiknak.
vegulis igy oldottam meg:
<form action="download.php" method="post">
<table>
<tr>
<td><input type="image" value="s03" name="season" src="images/seasons/s03_2.png" class="seasonimage" onMouseOver="imgChange3(this,'images/seasons/s03.jpg','s03')" onMouseOut="imgChange4(this,'images/seasons/s03_2.png','s03')"></input></td>
</tr>
...
</table>
</form>az adatok ff, chrome, safari alatt eljutnak a download.php-hoz, de ie es opera alatt nem:
"Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\teszt\download.php on line 123"valakinek valami otlet, hogy miert nem mukodik?
elore is koszonom. -
biker
nagyúr
létezik-e olyan függvény, ami pdf-et nyit, és png/tiff/jpg a kimenete, oldalanként egy kép?
kellene flashben megjeleníteni doksikat, de a pdf-re eddig csak pénzes licenceket találtunk. Gondolnám, hogy egy ilyen megoldaná, de mintha csak olyat találnék, ami képből(szövegből) pdf-et csinál
-
j0k3r!
őstag
hello!
van egy php oldalam, amin van egy 3x3 as tablazatban 9 kep. a tablazat egy formon belul van, ami az xxx.php nak kuldene adatot arrol, hogy eppen melyik kepre kattintottam.
a gondom az, hogy nem tudom hova kellene beirnom az elkuldendo adatot, mivel az <img> tagnal nem lattam name attributumot.
segitsegetek elore is koszi.kozben ugytunik megoldodott:
<input type="image" name="ez" src="valami.png"></input> -
j0k3r!
őstag
koszonom mindkettotok segitseget, szerintem mostmar menni fog!
-
Tele von Zsinór
őstag
<?php
$data = array(
array("1.1", "1.2", "1.3"),
array("2.1", "2.2", "2.3"),
//ide a többi sor
);
foreach($data as $row) {
echo sprintf("<tr><td>%s</td><td>%s</td><td>%s</td></tr>\n", $row[0], $row[1], $row[2]);
}ilyesmire gondoltál? A sorokat tárold egy-egy tömbben, ne az egyes mezőket, így ennyire leegyszerűsödik a dolgod.
-
j0k3r!
őstag
hello!
van egy ilyen tombom:
<?php
$elso=array
(
"nev"=>array
(
"egy",
"ketto",
"harom",
"negy",
"ot",
),
"cim"=>array
(
"itt",
"ott",
"amott",
"erre",
"arra",
)
);
foreach ($elso as $kiir)
{
echo "$kiir <br>\n";
}
?>a gondom csak annyi, hogy nem nagyon akarja kiirni a tomb elemeit.
(ez alapjan probaltam csinalgatni)
valami otlet? elore is koszonom.szerk: egyebkent a tervem az lenne majd, hogy tablazatos formaban jelenjenek meg a tomb elemei
-
DeltaPower
addikt
headeres hibák ellen, fájl legelejejére, a session_start() után tehetsz egy ob_start()-ot
-
j0k3r!
őstag
válasz
Tele von Zsinór #5122 üzenetére
A login.php fileban nincs session_start().
mostmar van, es mukodik!
koszonom szepen!
nemreg kezdtem el csak php-val foglalkozni, aztan meg ugy vagyok vele, hogy inkabb 2x is legyen ott valami, mint hogy hianyozzon. -
Tele von Zsinór
őstag
-
j0k3r!
őstag
inkabb mutatok kodot.
login.php
config.php
home.php(reszlet) -
j0k3r!
őstag
válasz
Tele von Zsinór #5118 üzenetére
ezt:
array(0) {
}headerre meg azt irja: "Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\teszt\login.php:21) in C:\xampp\htdocs\teszt\login.php on line 24"
(#5119) PazsitZ megnezem.
-
Tele von Zsinór
őstag
A home.php elejére (session_start után persze) rakott var_dump($_SESSION) mit mond?
Tudsz: header("Location: home.php"); die();
die azért kell, mert különben folytatná a futást a login.php, feleslegesen. Éles kódban ajánlott valami html kimenet, elmagyarázandó, hogy tovább lettél irányítva, meg egy link. -
j0k3r!
őstag
hello!
ugynezki mukodik a regisztralo script, mar be is tudok logolni az adatbazisba mentett tesztfelhasznalokkal, de viszont valami gond van a sessionnel, mivel utana hiaba megyek vissza a fooldalra a "hello xyz user" helyett ugyanaz a login felulet fogad.
ezeket mentettem el sessionbe a login.php vegen:
$_SESSION["nick"] = addslashes($_POST["username"]);
$_SESSION["loggedin"] = true;
es a home.php fileban van egy
if ($_SESSION["loggedin"]!== true)
{
...
}elagazas, ami nem mukodik, csak akkor, hogyha manualisan beirom a home.php file elejere, hogy:
<?php
session_start();
$_SESSION["loggedin"]=true;
$_SESSION["nick"]="tesztuser";
?>ha valaki tudja, hogy esetleg hol lehet a gond, azt orommel vennem.
elore is koszonom a segitseget. -
Frigo
őstag
válasz
Speeedfire #5111 üzenetére
Általános OOP könyvet nem nagyon fogsz találni .Egy jó Java könyv viszont remek kiindulási alap azért is mert a PHP alkotói erősen merítettek a Java-ból az OOP implementálásakor.Én személy szerint ezt a könyvet ajánlom : [link]
Ha ragaszkodsz a PHP-hez akkor ezeket az angol nyelvű könyveket érdemes megnézni:
[link]
[link]Illetve a weblaboron találsz kismillió leírást ,tutorialt .
-
x123456
aktív tag
válasz
Speeedfire #5111 üzenetére
Mondjuk elméleti téren én is eléggé tudatlannak érzem magam, de úgy tudom, a C-beli struct az szimpla rekordszerkezetek leírására való eszköz az "ős" C-ben. Annak meg vajmi kevés köze van az OOP-hoz.
PHP részéhez egyáltalán nem tudok hozzászólni, azt csak hagyományos nyelvként használgattam, az OO része kimaradt, de java kapcsán nem igazán értem, mi bajod van a ponttal...OOP egyébként (bocs, kissé szaxerűtlenül fogalmazok) inkább elméleti dolog. Ahány nyelv, annyiféle megvalósítása van - mondom ezt olyan alapon, hogy először a Turbo Pascal 5.5-ben találkoztam valami OO kezdeménnyel, rögtön utána tettem egy kis Java-s kitérőt, majd a minimális Java ismereteim birtokában "bepróbálkoztam" az objektumorientált perl-nél is, amit kb. úgy adtam fel, ahogy most te a javaról írtál.
-
Speeedfire
félisten
üdv!
nem tud valaki valami jó könyvet az OOP-vel kapcsolatban? lehetőleg magyar nyelven és for dummies kategóriában
egyre jobban érdekelnek a keret és template rendszerek azt mondták előbb el kell mélyülni rendesen az OOP-ben. Egy elég jó javas leírást találtam, de a vége felé már a "pont" miatt már kezdtem bele keveredni, ha jól tudom a phpban "csak" a this operátor van. Elég homályos még ez az egész, viszont mindenki az OOP-t nyomatja. C-ből már a struct szerkezet ismerős, ami félig meddig az oop alapja ha jól tudom. Ha valamit rosszul írtam akkor javítsatok ki.
A másik, hogy kezdőknek a codeigniter vagy a cakephp a jobb?Szabi
-
Tele von Zsinór
őstag
Egy jó szolgáltató rugalmas kéne hogy legyen e tekintetben, de az Options direktívát jó eséllyel tudod állítani .htaccess-ből is. Ahol én vagyok, eleve tiltva van a listázás.
Mappa jog módosítás annyit segíthet, hogy ha leveszed az execute jogot a mappáról, akkor nem lehet listázni, például ls-el, de közvetlen elvileg elérhetők a fileok. Egy próbát megér a dolog.
Nagyon összetett dolog a .htaccess, kiterjedt lehetőségekkel. Egy-egy részre jó eséllyel találsz használható leírást gugliban (ami neked kell, az például a mod_rewrite, de a témába beletartozik a reguláris kifejezések használata is), de egyben biztosan nem.
-
SaNyEe
aktív tag
válasz
Tele von Zsinór #5106 üzenetére
Mik a tapasztalataid azzal kapcsolatban, h a szolgáltatók mennyire rugalmasak e-tekintetben?
Mappa jogosultság módosítás nem tudom ebben az esetben mennyire lenne célravezető, végülis kerestem egy htaccess leírást (:
Tudna vki ajánlani egy jó könyvet, linkgyűjteményt .htaccesshez? Eddig is volt már rá szükségem (keresőbarát linkekhez) és most is, sőt úgy érzem még ezen túl is lesz ...
-
Speeedfire
félisten
Üdv!
Segítséget szeretnék kérni tőletek. Muterom megkért h készítsek a falunak egy oldalt és ehhez kérnék tőletek segítséget. Drupal alapokon készíteném el az oldalt, ahhoz nem kell annyira hozzá nyúlni és sok plugin van hozzá, viszont a design kérdésben nem tudok dűlőre jutni. A web tele van jobbnál-jobb témákkal, viszont mivel ez egy hivatalos oldal, ezért ide mégis inkább valami letisztult dizájn kellene, ha valakinek van javaslata akkor ossza meg velem. Szóval drupalhoz keresek kifinomult témát vagy esetleg olyan témát amit kicsi ráfordítással könnyen diszkrétté lehet tenni.
-
Tele von Zsinór
őstag
válasz
Ősember #5103 üzenetére
Milyen kódolású a $content? Ha utf8, akkor használd az mb_substr() függvényt a sima substr() helyett.
-
Ősember
őstag
válasz
Tele von Zsinór #5095 üzenetére
a content rész egy egész oldal ahonnan szedi az adatokat a kód, de megoldódott a gond, csak azt nem tudom mi a magyarázat rá
itt trim(substr($content,$pos1,3) a 33-ast kitöröltem, tehát nem volt megadott hossz. ekkor rendesen szedett adatokat, de mivel nem volt vége, ezért túl sokat szedett és használhatatlan volt, ezért beirtam hossznak, hogy 8 és akkor kidobta az első 4 karaktert, utána 7-nél meg az első 3-at.
szóval meg lett amit akartam, köszi a segitségetSpeeedfire: 0-val mindenre "htt"-t dobozz... nem tudom honnan szedte
mindkettőtöknek még egyszer köszönöm
-
SaNyEe
aktív tag
Re!
Megnéztem a &-s részt, már látom a különbséget a C-s pointerezés és a PHP & közt. Köszönöm a linket, hasznos volt!
Más.. A keretrendszeremnek egy meghatározott mappastruktúrája van, s ha pl.: http://localhost/010_sanyi_frame/index.php-t írok be szépen elindul egy folyamat amit kontroll alatt tudok tartani.
Amennyiben a kedves címsorírogató elkezdi ezt átírni úgy, h http://localhost/010_sanyi_frame/css akkor a css mappa tartalma szépen magyarosan mondva kidobódik, ami számomra nem túl kívánatos. Eszembe jutott a favágó megoldás és egy olyan is (valószínűleg) amihez marhára nem értek. favágó, h minden mappába kerül egy index.php. Ez akkor vicces különösen amikor az oldalra tartalmakat vihetnek fel a felhasználók, de megoldható. A másik amire gondoltam, h .htaccess-el biztos jól meg lehetne oldani, ahhoz viszont egyáltalán nem értek. Egyéb 5let? vagy hivatkozás a htaccess-es idevágó részhez? (: -
Speeedfire
félisten
válasz
Tele von Zsinór #5100 üzenetére
ezt nem is tudtam, minden nap tanulok valamit
bár ott nincsenek css fájlok amitől összeomlik az oldal, ha nem megfelelően van használva
Új hozzászólás Aktív témák
Hirdetés
- BESZÁMÍTÁS! Asus TUF B365M i7 9700F 16GB DDR4 512GB SSD RTX 3060Ti 8GB Rampage SHIVA Zalman 600W
- ÁRGARANCIA!Épített KomPhone i3 10105F 8/16/32GB RAM RX 6500 XT 4GB GAMER PC termékbeszámítással
- Dell OptiPlex MT/SFF 3040, 3050, 7050, 3060, 3070, 5070, 7060 /WIN 11 - SZÁMLA- GARANCIA
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- 125 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 9 7945HX, RTX 4070
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest