Hirdetés
- Luck Dragon: Asszociációs játék. :)
- droidic: Windows 11 önállóság nélküli világ: a kontroll új korszaka
- sziku69: Fűzzük össze a szavakat :)
- Meggyi001: Kuponok....
- Magga: PLEX: multimédia az egész lakásban
- bambano: Bambanő háza tája
- Brogyi: CTEK akkumulátor töltő és másolatai
- sziku69: Szólánc.
- Mr Dini: Mindent a StreamSharkról!
- sidi: 386-os Chicony gázplazma laptop memóriabővítése
Új hozzászólás Aktív témák
- 
			
			  vakondka őstag Sziasztok, Van egy stringem, amiben van egy ár és azt kellene valahogyan hatékonyan kiszednem a két zárójel közül. 
 (a pont sem kellene a számból...)
 Azt tudom, hogy valószínűle preg_match() kellene hozzá, de itt megállt a tudományom 
 Ez az egyik példastring:$product = "iDream 1260 fejmasszírozó (39.900Ft)"; Előre is köszi! 
- 
			
			  orkester őstag válasz  fordfairlane
							
							
								#14696
							
							üzenetére fordfairlane
							
							
								#14696
							
							üzenetéreLecseréltem a template-et az alapra, de sajnos ugyanaz volt a helyzet. 
 A vessző hibát is javítottam, de nincs változás.Az AJAX hiba elképzelhető, hogy szerver beállítástól függő? Sajnos AJAXban nem igen vagyok otthon. 
- 
			
			  fordfairlane veterán válasz  Joci93
							
							
								#14697
							
							üzenetére Joci93
							
							
								#14697
							
							üzenetéreAkkor valószínűleg az átirányítás nem működik. A header csak akkor működik, ha előtte nem történt írás a kimenetre, a böngésző felé (akárcsak egy szóköz vagy sortörés, vagy hibaüzenet, bármi). Ha az output buffering localhoston be van kapcsolva, akkor ezt észre sem veszed, mert ilyen esetben késlelteti a kiíratást a PHP. 
- 
			
			  Joci93 senior tag válasz  fordfairlane
							
							
								#14694
							
							üzenetére fordfairlane
							
							
								#14694
							
							üzenetéreVan benne session_start(); 
 A teljes kód:<?php 
 session_start();
 include("db_connect.php");
 if(!isset($_SESSION["felhasznalok"])){
 header("location:reg.php");
 }
 $usercheck_time = time();
 $felhasznalok_sql="SELECT * FROM felhasznalok WHERE id=" .$_SESSION["felhasznalok"];
 $felhasznalok_lekerdezes=mysql_query($felhasznalok_sql);
 $felhasznalok=mysql_fetch_array($felhasznalok_lekerdezes);
 
 
 if (isset($_POST["email"])) {
 $ToEmail = $_POST["email"];
 $EmailSubject = ' meghívás';
 $mailheader = "From: ".$felhasznalok["email"]."\r\n";
 /* $mailheader .= "Reply-To: ".$_POST["email"]."\r\n"; */
 /* $mailheader .= "Content-type: text/html; charset=iso-8859-1\r\n";*/
 $mailheader .= $felhasznalok["email"]. " "."Test";
 
 
 
 mail($ToEmail, $EmailSubject, $mailheader) or die ("Error");
 ?>
 Invitation is sent succesfully!
 <?php
 } else {
 ?>
 <form action="email.php" method="post">
 <table width="400" border="0" cellspacing="2" cellpadding="0">
 <tr>
 <td class="bodytext">Email adress:</td>
 <td><input name="email" type="text" id="email" size="32"></td>
 </tr>
 <tr>
 <td class="bodytext"> </td>
 <td align="left" valign="top"><input type="submit" name="Submit" value="Send"></td>
 </tr>
 </table>
 </form>
 <?php
 };
 if(isset($_POST['Submit'])){
 $sql =("UPDATE felhasznalok SET meghivok=meghivok+1,login=now(),pontok=pontok+5 WHERE id={$_SESSION['felhasznalok']}");
 $result = mysql_query($sql) or die(mysql_error()); }
 else{}
 
 ?>
- 
			
			  fordfairlane veterán válasz  orkester
							
							
								#14695
							
							üzenetére orkester
							
							
								#14695
							
							üzenetéreEzen a vonalon próbálkoznék tovább. Még látok fölösleges html és body tagokat a forrásban. Az AJAX lekérések látszólag ugyanolyanok, és ugyanolyan jók, mint a többi lépésnél. Ha azok működnek, akkor ennek is működnie kell elvileg. Persze ezt kell legelőször kizárni. Tehát először érdemes a shipping_method templatejét lecserélni valami nagyon egyszerűre. Ha az megjelenik IE8-ban is, akkor egyértelmű, hogy ezzel van a gond. Ha viszont nem jelenik meg az sem, akkor az AJAX request-response kezelés környékén van valami gebasz. Apróság, de futási hibát dob: Searchanise.options.PriceFormat = { 
 'rate': "1",
 'symbol': " Ft",
 'after': true,
 'decimals': "0",
 'decimals_separator': ",",
 'thousands_separator': " ",
 };Az utolsó 'thousands_separator' value utáni vesszőre nincs szükség. 
- 
			
			  orkester őstag válasz  fordfairlane
							
							
								#14693
							
							üzenetére fordfairlane
							
							
								#14693
							
							üzenetéreKöszi, elvileg kiszedtem a felesleget, de nem történt változás.  
- 
			
			  fordfairlane veterán válasz  orkester
							
							
								#14688
							
							üzenetére orkester
							
							
								#14688
							
							üzenetéreAz lehet a gond, hogy a http://microstore.hu/index.php?route=checkout/shipping_method által visszaadott 
 html kód problémás. Nyitó - záró html és body tagok vannak benne, amik nyilvánvalóan fölöslegesek egy body-ba ágyazott html dokument fragment esetében. A többi AJAX response htmlje nem tartalmaz ilyeneket. Talán ez lehet a probléma oka, bár biztosat nem tudok mondani.
- 
			
			  Joci93 senior tag válasz  DeltaPower
							
							
								#14687
							
							üzenetére DeltaPower
							
							
								#14687
							
							üzenetére1.Így is beenged egyből. De, akkor miért működik jól localhoston?  2. Azt hiszem, hogy újra át kell néznem a .htaccess beállítását...  
- 
			
			  Speeedfire félisten válasz  Tele von Zsinór
							
							
								#14689
							
							üzenetére Tele von Zsinór
							
							
								#14689
							
							üzenetéreÉn is így tudtam.   
 Sk8erPeter:
 Ezt én hol állítottam? Azt írtam, hogy nem akarom én magam bejárni a tömböt x alkalommal. Ha írok rá egy függvényt, akkor az végigmegy a tömbön és visszaadja a vágott tömböt. Aztán végigmehetek én is a vágotton. 
 Ha egy beépített gyorsabb, akkor miért ne használjam inkább azt? 
- 
			
			  Sk8erPeter nagyúr válasz  Speeedfire
							
							
								#14683
							
							üzenetére Speeedfire
							
							
								#14683
							
							üzenetéreNyilván jobbak TELJESÍTMÉNYBEN (könyörgöm, nem performanciában, ki a tököm találta ki ezt a szót?  ), de a hozzászólásodból úgy tűnt, mintha azt állítanád, hogy ezzel elkerülöd, hogy végig kelljen menni a tömbön, de hidd el, nem fogod attól még megkerülni magát a tömbbejárást attól még, mert beépített megoldást használsz. DE gyorsabb a beépített megoldás, az annyira nem meglepő. ), de a hozzászólásodból úgy tűnt, mintha azt állítanád, hogy ezzel elkerülöd, hogy végig kelljen menni a tömbön, de hidd el, nem fogod attól még megkerülni magát a tömbbejárást attól még, mert beépített megoldást használsz. DE gyorsabb a beépített megoldás, az annyira nem meglepő.
- 
			
			  Tele von Zsinór őstag válasz  Speeedfire
							
							
								#14683
							
							üzenetére Speeedfire
							
							
								#14683
							
							üzenetéreNem csak szerinted - valóban van teljesítménybeli különbség a C-ben írt ciklus és a php-ban írt között. Én is pont ezért használom az array_map és array_filter függvényeket, illetve társaikat napi szinten. 
- 
			
			  orkester őstag Sziasztok! Nem szeretnék pofátlan lenni, hogy áthárítom a megoldást, de napok óta nem jövök rá mi lehet a baj az oldallal IE8 és az alatt, hogy nem működik. Akinek lenne rám egy kis ideje itt tud belépni egy próba felhasználóval: 
 [link]
 takacs.ferenc26@gmail.com
 jelszó: 123456Utána kosárra kattintva lesz a problémás rész. 
 Kérlek a rendelést ne hagyjátok jóvá a végén.A lényeg, hogy a szállítási módok nem jönnek elő és fogalmam sincs miért. 
 Chrome, firefox, IE9 és felfelé nincs gond.Próbáltam javascriptet régebbire cserélni, a kódból kiszedni minden olyat ami utólag került bele, de nem oldotta meg és minden nap gyötörnek vele, nem sokáig húzhatom már a dolgot. Nem is kell helyettem megcsinálni, csak egy ötlet vagy bármi segítség, hogy mi lehet a baj, rettentően segítene. 
- 
			
			  DeltaPower addikt válasz  Joci93
							
							
								#14684
							
							üzenetére Joci93
							
							
								#14684
							
							üzenetére1. Nyisd meg inkognitó ablakban, ha úgy is egyből beenged akkor a kódban rossz valami. 2. Ennek miért kellene leszedni a .php végződést a linkekből? Ez azt csinálja, hogy minden nem létező fájlra mutató kérést átirányít az azonos nevű php-ra. Nyilvános tárhelyre így fel ne tedd az oldalt. 
- 
			
			  Peter Kiss őstag válasz  Sk8erPeter
							
							
								#14680
							
							üzenetére Sk8erPeter
							
							
								#14680
							
							üzenetéreHa tesztelné a logikáját, akkor ezzel a megoldással kevesebb teszt is elegendő lenne, persze elképzelhető, hogy szét kellene szedni kicsit, de itt maximum kb változókba való kipakolásról (pl. a closure-t) gondolok. Ha ciklusokat írsz, és abba if-eket és hasonlóakat, akkor növeled a kódod cyclomatic complexity-jét. Persze ez az érv szerintem nem fordult meg Speedfire fejében.  
- 
			
			  trisztan94 őstag válasz  Sk8erPeter
							
							
								#14673
							
							üzenetére Sk8erPeter
							
							
								#14673
							
							üzenetéreNa hát igen, ez az a pillanat amikor nem tudok mit mondani.  Utánanéztem, tényleg irdatlan nagy hülyeséget mondtam Utánanéztem, tényleg irdatlan nagy hülyeséget mondtam Az az igazság, hogy sosem néztem nagyon bele ezekbe, mondhatjuk azt is, hogy "találgattam" a működésüket. Jó, nyilván nem találgattam, a titkosítottat sem úgy értettem (mert ugye az csak https-el van). Minden jó, ha a vége jó: utánanéztem, most már kenem-vágom a témát. Mindennap tanul valamit az ember  
- 
			
			  Joci93 senior tag Az miért van, hogy a lentebb található kód tökéletesen működik localhoston, de feltéve szerverre már nem hajlandó lefutni? A szerveren $_SESSION[" "] nélkül is beenged az oldalra, míg a localhoston átirányít a reg.php-ra. <?php 
 if(!isset($_SESSION["felhasznalok"])){
 header("location:reg.php");
 }
 ?>A másik: 
 Csináltam egy .htaccess fájlt, amibe az alábbi sorokat írtam:
 Options -MultiViews
 RewriteEngine On
 RewriteBase /
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ $1.php [L]Látszólag jó a kód, de mégsem távolítja el az URL címből a .php végződést. (A fájlok a xamp/htdocs/tesz mappában vannak.) 
- 
			
			  Speeedfire félisten válasz  Sk8erPeter
							
							
								#14682
							
							üzenetére Sk8erPeter
							
							
								#14682
							
							üzenetéreNem viccelek, szerintem jobbak performanciában a beépített dolgok, mint amit én találok ki. Lehet van valami jobb algoritmus benne és nem sima ciklus. 
- 
			
			  Sk8erPeter nagyúr válasz  Speeedfire
							
							
								#14681
							
							üzenetére Speeedfire
							
							
								#14681
							
							üzenetére"Nem akartam for/while/foreach ciklust használni. Pont ezt akartam elkerülni, hogy több 10ezer elemen végig kelljen menni x alkalommal." 
 Most viccelsz, ugye? Szerinted a beépített PHP-s függvények mit csinálnak, amikor bejárják a tömböt, hogy adott feltételnek megfelelő elemet keressenek, nem végigmennek rajta? Szerinted a beépített PHP-s függvények mit csinálnak, amikor bejárják a tömböt, hogy adott feltételnek megfelelő elemet keressenek, nem végigmennek rajta? 
- 
			
			  Speeedfire félisten válasz  Sk8erPeter
							
							
								#14680
							
							üzenetére Sk8erPeter
							
							
								#14680
							
							üzenetéreNem akartam for/while/foreach ciklust használni. Pont ezt akartam elkerülni, hogy több 10ezer elemen végig kelljen menni x alkalommal. Megkapom a tömböt és leszűröm arra amire kell. Utána pedig végigmegyek rajta egy ciklussal. Jelenleg nem kell function, mert csak 1 helyen használom fel. De ha mégis akkor meg a Tools osztályba.  
- 
			
			  Sk8erPeter nagyúr válasz  Speeedfire
							
							
								#14675
							
							üzenetére Speeedfire
							
							
								#14675
							
							üzenetéreMiért nem rakod mindezt egy függvénybe, hogy általánosabb megoldás legyen, vagy mondjuk írsz egy nyomorult egymásba ágyazott, nagyon gyorsan áttekinthető for vagy foreach ciklust? Vagy utóbbi má' égő?  Pedig azt olyan 10 másodperc megírni. Pedig azt olyan 10 másodperc megírni.
- 
			
			  Speeedfire félisten válasz  Peter Kiss
							
							
								#14676
							
							üzenetére Peter Kiss
							
							
								#14676
							
							üzenetéreTeljesen jogos, csak copypasteltem, de nem írt hibát.  
 fordfairlane:
 Netbeans nem szólt, otthon meg nincs beállítva az xdebug.De kijavítottam, most már rendeben van. Már csak újra kell indexelni a tömböt szűrés után. 
- 
			
			  fordfairlane veterán válasz  Speeedfire
							
							
								#14675
							
							üzenetére Speeedfire
							
							
								#14675
							
							üzenetéreCsatlakozom az előttem szólókhoz. Hogy a fenébe lehet ennyire zavaros kódot szülni? Az editor, a futtatókörnyezet nem sikít vörösre festett warningokkal? XDebug nincs felrakva? 
- 
			
			  DeltaPower addikt válasz  Peter Kiss
							
							
								#14676
							
							üzenetére Peter Kiss
							
							
								#14676
							
							üzenetéreini_set("display_errors","on"); 
 error_reporting(E_E_E_E_E_EEEEEEVERYTHING); 
- 
			
			  Peter Kiss őstag válasz  Speeedfire
							
							
								#14675
							
							üzenetére Speeedfire
							
							
								#14675
							
							üzenetéreNem tűnik fel, a $B tömböt nem használod semmire? 
 És a $filter_array nem létezik?Error reporting? 
- 
			
			  Speeedfire félisten válasz  Sk8erPeter
							
							
								#14673
							
							üzenetére Sk8erPeter
							
							
								#14673
							
							üzenetére<?php 
 $A = array(array('id'=>3, 'value'=>4, 'test'=>true), array('id'=>3, 'value'=>5, 'test'=>true), array('id'=>4, 'value'=>4, 'test'=>true));
 $B = array('id'=>3);
 $filtered_array = array_filter($A, function ($val_array) use ($filter_array) {
 $intersection = array_intersect_assoc($val_array, $filter_array);
 return (count($intersection) === count($filter_array));
 });
 var_dump($filtered_array);
 //$filtered_array = array(array('id'=>3, 'value'=>4, 'test'=>true), array('id'=>3, 'value'=>5, 'test'=>true));Azt szeretném ezzel elérni, hogy az A tömbböt szűrje le azokra, amiben az id értéke 3. Mintha sql alatt egy where id = 3 feltételt adtam volna meg. 
- 
			
			  Sk8erPeter nagyúr válasz  Fecogame
							
							
								#14665
							
							üzenetére Fecogame
							
							
								#14665
							
							üzenetéreAz általad belinkelt oldalon ebből sejthetően a $_REQUEST tömböt használják az explicit $_POST vagy $_GET tömbök helyett, ami tartalmazza a $_GET, $_POST és $_COOKIE tömbök tartalmait is. 
 Nyiss egy fejlesztői eszköztárat (Ctrl+Shift+I vagy F12), és nézd meg a tagkereső űrlap kódját, ott láthatod, hogy POST-metódus van beállítva:Jelen esetben (mivel valszeg a $_REQUEST-tömböt használják az űrlap-feldolgozáskor) működik az, hogy ezt fogod, és átírod szépen GET-metódusra (method="get"), így amit beírsz majd a szövegmezőbe, az majd meg fog jelenni az URL-ben is, és még meg is kapod a kívánt tartalmat. Utóbbi más weboldalak esetében általában nem igaz, mert általában nem a $_REQUEST tömböt használják. 
 Itt ennél az űrlapnál egyébként semmi nem indokolja a POST-metódus használatát, mivel ez egy kereső, és itt pont az lenne a lényeg, hogy az URL eleve elküldhető, kimásolható, könyvjelzőzhető legyen.
- 
			
			  Sk8erPeter nagyúr válasz  SirRasor
							
							
								#14655
							
							üzenetére SirRasor
							
							
								#14655
							
							üzenetéreIgazán leírhattad volna, mit csesztél el, mert már felkeltetted az érdeklődésemet azzal, hogy le akartad tiltani a kivételkezelést.  (#14657) Speeedfire : 
 Igazából mi a célod, mit szeretnél? (#14666) trisztan94 : 
 ezt bebélyegezve írtad, vagy józanul? Habár ha előbbi, akkor ennél szebbet is írhattál volna. "Az általános kérések GET-tel mennek a szerver felé" 
 Milyenek azok az "általános kérések"? "A másik lehetőség a POST kérés, ami egy titkosított kérés. Ezt általában regisztrációs felületeken, login felületeken, vagy bármi olyanon szokták használni, ami titkosítást igényel. Cserébe nyilván sokkal lassabb, mint a GET. Ezt kinyerni szinte lehetetlen, ebben a topikban nem is foglalkozunk ezzel, nem akarjuk, hogy bárki kivegye más oldalak POST kéréseit. Mert az nagyon rossz lenne.  " "
 Hát ez óriási.   
 Igazából az egymás után következő mondataidból nem is nagyon lehet kiemelni blődséget, mert egyik üti a másikat. Titkosított? Olyan felületeken használnak POST-metódust, ahol titkosításra van szükség? Titkosított? Olyan felületeken használnak POST-metódust, ahol titkosításra van szükség? Lassabb? Kinyerni lehetetlen? Nagyon jó, még! Lassabb? Kinyerni lehetetlen? Nagyon jó, még! (Habár ne, mert valaki még elhiszi.) (Habár ne, mert valaki még elhiszi.)Igazából nekem most szereztél pár vidám percet, de összességében ez elég szomorú, mert tudtommal igen aktívan fejlesztesz weboldalakat, több programozási nyelven is, de láthatólag fogalmad sincs az alapok alapjainak legelemibb részeivel sem. Bocs, de evvan.  Inkább kérdezz vagy olvass, ha valami még nem tiszta. Inkább kérdezz vagy olvass, ha valami még nem tiszta.
- 
			
			  fordfairlane veterán válasz  trisztan94
							
							
								#14666
							
							üzenetére trisztan94
							
							
								#14666
							
							üzenetéreEz egyáltalán nem így van, sem a GET sem a POST lekérések nem titkosítottak. Ahhoz https protokoll szükséges. Egyébként meg nyilván AJAX lekérdezéseket kellene megjeleníteni, amik nem látszanak az URL-ben, akármelyik metódust használják. 
- 
			
			  DNReNTi őstag válasz  Peter Kiss
							
							
								#14668
							
							üzenetére Peter Kiss
							
							
								#14668
							
							üzenetéreJól összefoglaltad  
- 
			
			  Peter Kiss őstag válasz  trisztan94
							
							
								#14666
							
							üzenetére trisztan94
							
							
								#14666
							
							üzenetéreÚristen. 
- 
			
			  Soak veterán válasz  trisztan94
							
							
								#14666
							
							üzenetére trisztan94
							
							
								#14666
							
							üzenetéreA másik lehetőség a POST kérés, ami egy titkosított kérés. Ezt általában regisztrációs felületeken, login felületeken, vagy bármi olyanon szokták használni, ami titkosítást igényel. Cserébe nyilván sokkal lassabb, mint a GET. Ezt kinyerni szinte lehetetlen, ebben a topikban nem is foglalkozunk ezzel, nem akarjuk, hogy bárki kivegye más oldalak POST kéréseit. Mert az nagyon rossz lenne.  A tobbi resze sem gyenge de ez nagyon felre ment.[link] A tobbi resze sem gyenge de ez nagyon felre ment.[link]
- 
			
			  trisztan94 őstag válasz  Fecogame
							
							
								#14665
							
							üzenetére Fecogame
							
							
								#14665
							
							üzenetéreAz általános kérések GET-tel mennek a szerver felé. Egy ilyen GET kérésben lehet pluszinfó is, pl. változók. Erre egy nagyon jó példa itt a PH! működése, ennek a hsz. író felületnek ez a GET kérése: http://prohardver.hu/muvelet/hsz/uj.php?thrid=552418&rtoid=14665 Ez lefordítva magyarra: http kapcsolattal menj fel a prohardver.hu domain alatt lévő muvelet mappában lévő hsz mappán belülre, ott futtatsd le az uj.php fájlt. + vannak változók is, a thrid és az rtoid. Ebből a thrid az a "thread identification", azaz a topik egyedi azonosítója, a rtoid pedig a hsz.-ed azonosítója amire válaszolok. Ezekből a változókból, meg még egy pár dologból rakja magát össze ez a rendszer. Na most ennek a kinyerése roppant egyszerű: 
 [link]A másik lehetőség a POST kérés, ami egy titkosított kérés. Ezt általában regisztrációs felületeken, login felületeken, vagy bármi olyanon szokták használni, ami titkosítást igényel. Cserébe nyilván sokkal lassabb, mint a GET. Ezt kinyerni szinte lehetetlen, ebben a topikban nem is foglalkozunk ezzel, nem akarjuk, hogy bárki kivegye más oldalak POST kéréseit. Mert az nagyon rossz lenne.  
- 
			
			Adott weboldalon ha rákattintok egy gombra, akkor az lead egy kérést a szerver felé, ami egy URL. Hogyan tudom ezt az URL-t "kinyerni"? Pl. a phmegbízhatóság oldalán is van a lekérés, ehhez is van egy URL, holott a böngésző nem jeleníti meg ezt közvetlenül. Ugyanezt hogyan lehet lekérni egy másik oldalon?  
- 
			
			  PumpkinSeed addikt válasz  DeltaPower
							
							
								#14663
							
							üzenetére DeltaPower
							
							
								#14663
							
							üzenetéreKöszönöm. Már csak a karakterkódolással van probléma.  
- 
			
			  DeltaPower addikt válasz  PumpkinSeed
							
							
								#14662
							
							üzenetére PumpkinSeed
							
							
								#14662
							
							üzenetéreNe a $fp file pointert explode-old, hanem a $beolvas stringet. 
- 
			
			  PumpkinSeed addikt válasz  DeltaPower
							
							
								#14661
							
							üzenetére DeltaPower
							
							
								#14661
							
							üzenetéreMost így néz ki: $i=0; 
 $DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];
 $fp = fopen("$DOCUMENT_ROOT/../arlista.txt",'rb');
 while(! feof($fp))
 {
 $beolvas = fgets($fp);
 $arak[$i] = explode(",",$fp);
 $i++;
 }
 fclose($fp);
 $arak[1][2];Ezt a hibát kapom: 
 Warning: explode() expects parameter 2 to be string, resource given in C:\Users\looow\Desktop\USBWebserver v8.5\8.5\root\shop.php on line 29Mit lehet tenni, ez ellen? 
- 
			
			  DeltaPower addikt válasz  PumpkinSeed
							
							
								#14660
							
							üzenetére PumpkinSeed
							
							
								#14660
							
							üzenetéreTömböt ad vissza, ezért gondoltam egyértelmű, hogy $arak[0], $arak[1] stb. mivel a sorból egydimenziós tömb lesz. 
- 
			
			  PumpkinSeed addikt válasz  DeltaPower
							
							
								#14659
							
							üzenetére DeltaPower
							
							
								#14659
							
							üzenetére"$megrendeles = fgetcsv($fp, 100, "\t"); 
 Ez a kód lekér egy sort a fájlból, majd ahol tabulátort (\t) talál, felbontja azt. Az eredményeket tömbben adja vissza (aminek
 példánkban Smegrendeles a neve). A tömböket a 3. fejezeeben fogjuk részleeesen megtárgyalni."Ez volt a könyvben, és mivel én tabulátorokkal adtam meg, így felbontja azt. Tudom, hogy ciklussal kellene a többi sort beolvastatni, de nem az volt a kérdés hanem, hogy hogyan hivatkozom rá? 
- 
			
			  DeltaPower addikt válasz  PumpkinSeed
							
							
								#14658
							
							üzenetére PumpkinSeed
							
							
								#14658
							
							üzenetérefgetcsv egyszerre egy sort olvas 
- 
			
			  PumpkinSeed addikt Az fgetcsv-t kellene használnom, elvben ez beleteszi egy tömbbe az elemeket. $DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT']; 
 $fp = fopen("$DOCUMENT_ROOT/../arlista.txt",'rb');
 $arak = fgetcsv($fp, 100, "\t");Így nézz ki az ide tartozó rész. Illetve ezt kell beolvasni: Azonosító Neve Ára 
 GUM Gumiabroncs 300
 GYE Gyertya 150
 OLA Olaj 20Viszont nem tudom, hogy a beolvasás után hogyan hivatkozzak rá? A beolvasandó szöveg tabulátorokkal van elválasztva. Akkor hivatkozhatok úgy rá, hogy $arak[1][2]? 
- 
			
			  Speeedfire félisten Ez működik valakinek? 
 Nálam nem akarja megcsinálni és még hibát is dob rá. <?php 
 $A = array(array('id'=>3, 'value'=>4, 'test'=>true), array('id'=>3, 'value'=>5, 'test'=>true), array('id'=>4, 'value'=>4, 'test'=>true));
 $B = array('id'=>3);
 $filtered_array = array_filter($A, function ($val_array) use ($filter_array) {
 $intersection = array_intersect_assoc($val_array, $filter_array);
 return (count($intersection) === count($filter_array));
 });
 var_dump($filtered_array);
- 
			
			  #36268800 törölt tag Üdv! (Először is elnézést szeretnék kérni, ha rossz topic-ba írok, ez esetben legyetek szívesek átirányítani a megfelelő helyre! Köszönöm!) Tanácsot szeretnék kérni a következő dologban: 
 a húgomnak szeretnék egy portfóliós weboldalt (esetleg blogot), amely ingyen van, könnyen és gyorsan szerkeszthető, lehetőleg magyar vagy angol nyelven fellelhető és a következőket tartalmazhatja: galéria, hírek, többféle oldalfelépítés, testre-szabható design.A húgom amatőr fotós, így szeretnénk a képeit kicsit propagálni, valamint hosszútávon ez egy jó lehetőség lenne számára egyfajta felelős gondolkodás kialakításában, hiszen a weboldallal törődnie kellene rendszeresen (friss hírek, képek feltöltése, válasz az esetleges levelekre, az adott időnek megfelelő design kialakítása), valamint a kreativitásán is csiszolna. Nekem még igen kevés a tapasztalatom a weboldalak terén, épp ezért szeretnék egy könnyen kezelhető, megbízható, ingyenesen hozzáférhető motort. Köszönöm előre is a válaszokat! 
- 
			
			  SirRasor addikt Hoi! Találkoztatok már olyannal, hogy 
 "Parse error: syntax error, unexpected '{' in..." hibát dob, ha csinálok egy szabvány try blokkot?
 Arra a sorra dobja a hibát, ahol a try { helyezkedik el. Ha sort török, és egyedül áll a {, akkor arra a sorra mondja a hibát.DE csak a try-nál fordul elő. Elé bevágtam szimpla ifet teleaggatott {}-al és továbbjutott rajta. Másik szerveren nem volt ilyen gond, de guglizásban arra jutottam, hogy php.ini-vel nem lehet letiltani a try-finally dolgot. Vagy mégis?  
- 
			
			  trisztan94 őstag válasz  PumpkinSeed
							
							
								#14652
							
							üzenetére PumpkinSeed
							
							
								#14652
							
							üzenetéreSzebb úgy, ha a string összefűzést egy külön változóban csinálod, majd azt adod meg, mint index for($i=0;$i<7;$i++) 
 {
 $index = "input_".$i;
 $input = $_POST[$index];
 echo $input;
 }Később sokkal átláthatóbb lesz. 
- 
			
			  PumpkinSeed addikt válasz  PumpkinSeed
							
							
								#14651
							
							üzenetére PumpkinSeed
							
							
								#14651
							
							üzenetére$input = $_POST['input_'.$i];  
- 
			
			  PumpkinSeed addikt for($i=0;$i<7;$i++) 
 {
 $input = $_POST['input_$i'];
 echo $input;
 }Azt szeretném megcsinálni, hogy a post-al átküldött adatokat beolvassam, de mivel input_1-8-ig van ezért, hogyan lehetne azt megcsinálni, hogy for-ral fogadjam őket, mert gondolom a fenti megoldásom hülyeség. 
- 
			
			  Speeedfire félisten Találtam egy tök jó php hibát.  Adott egy tábla amiben egy clob mező van. Ezt kifetchelem (de szép szó) egy tömbbe és végigmegyek rajta egy foreach ciklussal. 
 A clob mezőt egy stream_get_contents() függvénnyel egy változóba rakom. Itt a hiba. Minden egyes iterációban a legutoljára fetchelt clob mező tartalma van, a többi mező értéke megfelelő.
 A másik érdekesség, hogy a resource_id minden esetben más és más, mégis a legutolsót írja ki. 
- 
			
			  DeltaPower addikt válasz  PumpkinSeed
							
							
								#14648
							
							üzenetére PumpkinSeed
							
							
								#14648
							
							üzenetéreusort ha pozitív számot kap visszatérésnek akkor az első nagyobb mint a második, ha negatívot akkor a második nagyobb mint az első, ha nullát akkor egyenlőek 
- 
			
			  PumpkinSeed addikt function osszehasonl itas ($x, $y} l 
 if ($x[l) == $y[l)} l
 return 0;
 else if ($x[l) < $y[l)}
 return -1;
 else l
 return l;
 usort( $termekek, 1 osszehasonli t as 1};Ezt egy könyvből másoltam ki. Itt amit visszaad return-ba érték azt az usort függvény kapja meg, szóval ha én átírnám mondjuk az else if return értékét 2-re akkor az usort függvény hibásan futna le, vagy hogy van ez most? 
- 
			
			  #68216320 törölt tag válasz  Sk8erPeter
							
							
								#14646
							
							üzenetére Sk8erPeter
							
							
								#14646
							
							üzenetéreKöszönöm a segítséget, és elnézést tőled és Kommy fórumtárstól, hogy beleszóltam a dolgotokba, de kíváncsi lettem és igencsak megérte.  
- 
			
			  Sk8erPeter nagyúr válasz  #68216320
							
							
								#14645
							
							üzenetére #68216320
							
							
								#14645
							
							üzenetéreJa, törölhető a console.log nyilván, ott csak az volt a cél, hogy megmutassam, hogyan nyerheted ki az értékét a kiválasztott elemnek egyszerűen. (event.target.value) 
 A checkboxos kérdésre: nem "csináltam" semmilyen elemet, egyszerűen csak lekértem a rendkívül fantáziadúsan "checkbox" id-vel rendelkező elemet (document.getElementById-vel), és belepakoltam a visszatérési értéket egy változóba. Aztán azzal lehet azt kezdeni, amit akarsz. Itt a kódban szerepe nincs, csak beleraktam, először gondoltam rá, hogy kezdek vele valamit szemléltetésként, aztán menetközben rájöttem, hogy nincs kedvem. "Visszatérve az onChange eseménykezelőhöz this.form.submit()-al már ment volna az is nem? Persze nem lenne szép a kód azt elismerem  " "
 Igen, és igen. Hangsúlyosabb, hogy nem lenne szép a kód, de valóban működött volna. 
- 
			
			  #68216320 törölt tag válasz  Sk8erPeter
							
							
								#14644
							
							üzenetére Sk8erPeter
							
							
								#14644
							
							üzenetéreAha, világos a működése, köszönöm.  Gondolom a console.log nyugodtan törölhető. checkBox = document.getElementById('checkbox'); - ezt nem értem miért van benne, de gondolom csak annyi, hogy csináltál belőle is egy checkBox névvel elemet. Nem? Visszatérve az onChange eseménykezelőhöz this.form.submit()-al már ment volna az is nem? Persze nem lenne szép a kód azt elismerem  
- 
			
			  Sk8erPeter nagyúr válasz  #68216320
							
							
								#14642
							
							üzenetére #68216320
							
							
								#14642
							
							üzenetére"onChange="javascript:submit()" amire gondoltál?" 
 Nem. Ez a "javascript:" rész eleve nem szükséges (honnan maradt ez meg a fejekben? ). Az onchange eseménykezelő eleve JavaScript-kódot vár, úgyhogy felesleges explicite megmondani neki. Ez az onchange-be rakott submit azért sem jó, mert a submit() a formra vonatkozik, nem a selectre, az onchange eseménykezelőjét viszont akkor már a select elemhez kellene írni. Ezenkívül eleve szét kell választani a HTML-kódot a JavaScript-kódtól (és ugyanez vonatkozik a CSS-kódokra is egyébként), az ilyen attribútumokkal bedrótozott megoldások nem jók, hosszú távon karbantarthatatlanok. Igaz, vannak bizonyos beállítás-jellegű dolgok, amiket néha be kell drótozni, például a data-* attribútumok, de az más lapra tartozik. ). Az onchange eseménykezelő eleve JavaScript-kódot vár, úgyhogy felesleges explicite megmondani neki. Ez az onchange-be rakott submit azért sem jó, mert a submit() a formra vonatkozik, nem a selectre, az onchange eseménykezelőjét viszont akkor már a select elemhez kellene írni. Ezenkívül eleve szét kell választani a HTML-kódot a JavaScript-kódtól (és ugyanez vonatkozik a CSS-kódokra is egyébként), az ilyen attribútumokkal bedrótozott megoldások nem jók, hosszú távon karbantarthatatlanok. Igaz, vannak bizonyos beállítás-jellegű dolgok, amiket néha be kell drótozni, például a data-* attribútumok, de az más lapra tartozik.Gyorsan bepötyörésztem neked egy példakódot, mire gondolok: 
 http://jsfiddle.net/25FXE/1/
 Itt látható, hogy a JavaScript-kód független a HTML-kódtól.
 Ha a myTestForm.submit(); sort kikommentezed, és megnyitod a konzolt (Ctrl+Shift+I, Console fül), akkor láthatod a kiválasztott értéket, ami az eseménykezelőn belül az event.target.value-val érhető el.(#14643) Kommy: szívesen. 
- 
			
			  Kommy veterán biker, Sk8erPeter: köszönöm szépen a rávezetést, így legalább már tudtam mire kell keresnem. 
- 
			
			  #68216320 törölt tag válasz  Sk8erPeter
							
							
								#14641
							
							üzenetére Sk8erPeter
							
							
								#14641
							
							üzenetéreonChange="javascript:submit()" amire gondoltál? 
- 
			
			  Kommy veterán Meg lehet az valahogy csinálni, hogy van egy select-em aminek választási lehetőségeit egy sql lekérdezéssel állítom össze, és ha kiválasztom valamelyiket akkor lefusson újra egy rész a php-ben ami az adatok kijelzéséért felelős. 
- 
			
			  #68216320 törölt tag válasz  DNReNTi
							
							
								#14637
							
							üzenetére DNReNTi
							
							
								#14637
							
							üzenetéreAz a helyzet, hogy az 500 karakter a maximum. Tehát, ha nem mondatvégi írásjel (.!?") akkor visszafele kellene néznem a dolgokat. olyat már meg tudtam csinálni, hogy explode-al szétbontottam az 500 karaktert a szóköz segítségével és az utolsót nem számoltam, így biztosra mentem, hogy nem szó közben vágom el. A te módszereddel, a hozzáfűzéssel az a baj, hogy vannak a szövegben szakmai részek, amik elég kerek mondatok és akár +200 karaktert is jelenthetnek könnyedén. ennyi hely nincs a div-ben, ahova menne a szöveg. Így is trükköznöm kellett, hogy a spec HTML részeket (pl. <br />) eltüntessem strip_tags()-al. 
 Gondban vagyok még a " (idézőjel) karakterrel, mert ha egy mondat abban van akkor nem elég a mondatvégi írásjel, hanem az is kell még. Ha nem fér bele az idézőjelek közti rész az 500 karakterbe az egészet ki kellene hagynom.
- 
			
			  DNReNTi őstag válasz  #68216320
							
							
								#14636
							
							üzenetére #68216320
							
							
								#14636
							
							üzenetéreElőször vizsgáld hogy a szöveg 500 karakter hosszú e. 
 Ha nem akkor kész is vagy.Ha több mint 500 karakter, akkor a substr függvénnyel addig vizsgálod a következő karaktereket amíg egy mondatvégi írásjelet nem kapsz, és mindet hozzáfűzöd az eredeti 500 karakterhez. Vagy strpos függvénnyel meghatározni az 500. karaktertől következő legközelebbi megfelelő karakter pozícióját majd a substr-el addig levágni az elejétől. Talán ez még egyszerűbb. 
- 
			
			  #68216320 törölt tag Egy nagyobb szövegből kellene az elejét kiíratnom úgy, hogy a kiírt szöveg vége egyben a mondat vége is legyen. Például azt mondom, hogy az első 500 karaktert írom ki. De ekkor a mondat közben van valószínűleg az 500-ik karakter, sőt legtöbbször szó közben. Mivel tudnék úgy kiragadni egy részt, hogy valamelyik mondatvégi írásjel legyen az utolsó karakter? Explode jó lenne talán, de nem vagyok biztos a dolgomban. 
- 
			
			  Speeedfire félisten válasz  Sk8erPeter
							
							
								#14633
							
							üzenetére Sk8erPeter
							
							
								#14633
							
							üzenetéreAdatbázis php vonal. Php-ból utf8-al kerek le, de az adatok iso-ban vannak. Itt lehetett gond. 
 De itt xls volt a kimenet.
- 
			
			  Zedz addikt Sziasztok, CodeIgniterben megpróbáltam használni a beépített input class-t. Alapjában véve működik, szépen átadja a bevitt értéket, nem is ezzel van a gond, hanem azzal, hogy kíváncsiságból megpróbáltam egy sql injectiont beszúrni. Elvileg védve van ezektől, nem is dobta ki a találatokat, viszont egy hatalmas nagy SQL error üzenetet + magát az SQL lekérdezést is kiírta!  Valaki meg tudná esetleg mondani, hogy ezt hogyan kell lekezelni a CI-ben? Próbáltam különféle képpen rákeresni googlen is, de egy talált sem passzolt az én problémámra. Hátha itt valaki már foglalkozott ezzel, a válaszokat előre is köszönöm!  
- 
			
			  Sk8erPeter nagyúr válasz  Speeedfire
							
							
								#14632
							
							üzenetére Speeedfire
							
							
								#14632
							
							üzenetéreÉs akkor most végül is pontosan hol volt elkúródva a karakterkódolás? 
 Amúgy a <br /> használata sztem az általad mutatott esetben nem indokolt, inkább margózással kellene megoldani a távolságtartást. Igazából a <br />-ekkel az a gond, hogy nehézkessé teszi a későbbi átszabását a dizájnnak, bedrótozza a távolságot, a margó előnye, hogy csak a CSS-fájlban kell turkálni. Igazából a <br />-ekkel az a gond, hogy nehézkessé teszi a későbbi átszabását a dizájnnak, bedrótozza a távolságot, a margó előnye, hogy csak a CSS-fájlban kell turkálni.
- 
			
			  Speeedfire félisten válasz  Sk8erPeter
							
							
								#14631
							
							üzenetére Sk8erPeter
							
							
								#14631
							
							üzenetéreRandom helyen cseszódött el, egy db lekérdezéshalmaznál. Ott ezt csinálta, a többi ékezetesnél nem volt gond. Így nem is vettem figyelembe az ékezetet. 
 Nálam adatbázisban így néz ki.
 <table>/*-------*/</table>
 <br>
 <br>
 <table>/*-------*/</table>
- 
			
			  Sk8erPeter nagyúr válasz  Speeedfire
							
							
								#14630
							
							üzenetére Speeedfire
							
							
								#14630
							
							üzenetéreJa, ezek szerint félreértettelek, azt hittem, csak az ékezeteknél csesződik el, és lesz például <tdápa, utca 101< td teszt></tdápa,>, mint a példádban, de ettől még a <table>...</table> után egyből következik két <br />, majd utána egy <td> is, akkor sorry. 
- 
			
			  Speeedfire félisten válasz  Sk8erPeter
							
							
								#14629
							
							üzenetére Sk8erPeter
							
							
								#14629
							
							üzenetéreEzt írtam, hogy valid adatb. oldalon, de php-nál mer nem. 
- 
			
			  Sk8erPeter nagyúr válasz  Speeedfire
							
							
								#14628
							
							üzenetére Speeedfire
							
							
								#14628
							
							üzenetéreÉs a markup struktúráját, amit írtam, javítottad már?  Nem tudom, mennyire jött át, de a kód, amit a belinkelt hsz.-ben "idéztem", nagyon nem volt valid. Nem tudom, mennyire jött át, de a kód, amit a belinkelt hsz.-ben "idéztem", nagyon nem volt valid.
- 
			
			  Speeedfire félisten válasz  Sk8erPeter
							
							
								#14620
							
							üzenetére Sk8erPeter
							
							
								#14620
							
							üzenetéreKarakter encoding probléma volt, az érdekes hogy nem volt speciális karakter benne. 
- 
			
			  raczger őstag válasz  Sk8erPeter
							
							
								#14626
							
							üzenetére Sk8erPeter
							
							
								#14626
							
							üzenetéreEhhez találtam először értelmesnek tűnő leírást, így ezt kezdtem el. 
- 
			
			  raczger őstag válasz  Sk8erPeter
							
							
								#14624
							
							üzenetére Sk8erPeter
							
							
								#14624
							
							üzenetéreAlapból tényleg nem működik, a freetds dblib-et kell telepíteni hozzá. 
- 
			
			  Sk8erPeter nagyúr válasz  raczger
							
							
								#14623
							
							üzenetére raczger
							
							
								#14623
							
							üzenetéreAmúgy én már azt sem értem, hogy az mssql_connect nálad hogy működött a XAMPP 1.7.7-tel, mert eszerint abban a csomagban már a PHP 5.3.8 van, amivel már nem kellene működnie az mssql_connect-nek ("These functions allow you to access MS SQL Server database. This extension is not available anymore on Windows with PHP 5.3 or later.")  
- 
			
			  raczger őstag PHP-t és MSSQL-t próbálom "összekötni" windows 7-en (localhoston), eddig sikertelenül. Jelenleg elméletileg minden rendben van, de mégsem akar csatlakozni ( unable to connect server ... ). 
 XAMPP 1.7.7-et ( + freetds 8.0 ) használok, SQL SERVER 2008 R2-ővel. Az utóbbiban sikeresen létrehoztam az adatbázist, felhasználónevet (hozzá a jelszót). Az alábbi két leírás alapján állítottam be a dolgokat: [link], [link]
 Túrom egy ideje a netet, sok ötletet kipróbáltam, de eddig még nem sikerült kapcsolódnia. Az alábbi egyszerű kóddal ellenőrzöm, hogy összejött-e:
 <?php
 $test=mssql_connect('.\SQLEXPRESS','test','test')
 or die('Nem sikerült');
 ?>
 Igazából a szerver nevénél sem tudom biztosan mit is kellene használni, így localhost-tal is mindig kipróbálom. Esetleg van valakinek ötlete még mit ellenőrizzek vagy nézzek meg?
- 
			
			  Sk8erPeter nagyúr válasz  Speeedfire
							
							
								#14619
							
							üzenetére Speeedfire
							
							
								#14619
							
							üzenetéreIgazából semmivel nem osztottál meg több infót.  Úgyhogy sajnos nem egyszerű így segíteni. Úgyhogy sajnos nem egyszerű így segíteni. 
 Amúgy ékezet nélkül nem tudod kipróbálni?De ezt azért nézd meg még egyszer, amit írtam: 
 <table>...</table>
 <br>
 <br>
 <td>...</td>
 Ez a kód HIBÁS, vágod... Nem ártana javítani. Nem ártana javítani.
 (Ettől még mondjuk a HTML-kimenetnek nem kéne elcsesződnie.)
- 
			
			  Speeedfire félisten válasz  Sk8erPeter
							
							
								#14618
							
							üzenetére Sk8erPeter
							
							
								#14618
							
							üzenetéreA részletekben. ![;]](//cdn.rios.hu/dl/s/v1.gif) De, ott is van, mivel az sql állítja elő a riportot, lényegében egy html alapú tábla, ami content type alapján lesz xls. A fura, hogy nem minden adatnál volt ilyen, így én is valami '"/ tagokra gondoltam, de nem. Ezeket escape-eltem sql-ben, így elvileg nem szabadna zavarnia a html-t. Lehet, hogy ékezet, nem jöttem rá. Elkezdtem nézni a táblát, hogy hol hasal el, de nem láttam semmi extra karaktert az sql táblában. Emiatt gondoltam, hogy az adatbázisból való kiolvasáskor van valami gond. Most megírtam php alatt is a generálót, de így 2 helyen kell karbantartani a kimenetet.  
- 
			
			  Sk8erPeter nagyúr válasz  Speeedfire
							
							
								#14617
							
							üzenetére Speeedfire
							
							
								#14617
							
							üzenetéreEbben hol a PHP?  "A gondom az, hogy toad alatt tökéletes amit generál" 
 Úgy érted, ott nincs olyan, hogy
 <table>...</table>
 <br>
 <br>
 <td>...</td>
 meg ehhez hasonló rossz kimenetek?
 Igazából nem tudunk semmit a tárolt eljárásról, meg semmiről, így elég nehéz segíteni. De valami mintát észrevettél a szétesésben? Az ékezetek környékén van a gond, vagy köze nincs hozzá? Először próbálhatnád ékezetmentes szöveggel is, ha van bármi köze speciális karakterekhez, ékezetekhez.
- 
			
			  Speeedfire félisten Adott egy oracle tárolt eljárás, amit egy html táblát ad vissza, amit content header-rel xls-ben adok ki a felületen. 
 A gondom az, hogy toad alatt tökéletes amit generál, viszont az excelben már nem.
 A toad alatti html-t egy fájlba rakva és megnyitva rendesen jelennek meg az adatok. Viszont ha excelben nyitom meg, olyan mintha a td/tr tagok szétesnének.
 Az adatbázis iso-ban van én utf-8-ban szedem le az adatokat. Eddig ilyen gond nem volt, sőt a tárolt eljárásba raktam egy to_char(htf.escape_sc(i.oszlopnev)) kódolást is, gondoltam hátha itt lesz a gond.
 Valakinek van valami ötlete? 
- 
			
			  PumpkinSeed addikt válasz  Sk8erPeter
							
							
								#14615
							
							üzenetére Sk8erPeter
							
							
								#14615
							
							üzenetéreÉn csak a megoldó vagyok, ő a kitaláló. De valami feladat volt nekik valahol.  
- 
			
			  Sk8erPeter nagyúr válasz  PumpkinSeed
							
							
								#14614
							
							üzenetére PumpkinSeed
							
							
								#14614
							
							üzenetéreAz előbb amúgy azt nem írtam, hogy az eddigi tömbös megoldás folytatható, DE felesleges az összes eddig érkezett karaktert eltárolni, gondolj bele, mi van, ha óriásfájllal van dolgod, akkor ott csücsül a memóriában az a sok immár feleslegessé vált adat. Szóval egyszerűen felülcsaphatod a tömböt az új adatokkal, amikor nem szükséges már tárolni az adott karaktereket. De engem továbbra is érdekelne, miért ezt a fájlos megoldást választjátok  
- 
			
			  PumpkinSeed addikt válasz  Sk8erPeter
							
							
								#14613
							
							üzenetére Sk8erPeter
							
							
								#14613
							
							üzenetéreA legeslegelején én is feltételekkel terveztem, és szerintem marad az is. Hülye vagyok, nem is azt akartam írni, csak az volt az eszembe más miatt.  Köszönöm a segítségeket.    
- 
			
			  Sk8erPeter nagyúr válasz  PumpkinSeed
							
							
								#14612
							
							üzenetére PumpkinSeed
							
							
								#14612
							
							üzenetére"Egyszerre 2 karaktert vizsgálok, és ha két azonos karakter van egymás mellett akkor az számít egy gyémántnak, viszont ha a két karakter előtt van egy l (L) betű akkor az nem gyémánt, viszont ha I (i) van akkor pedig bankba kell helyezni és csak a felét éri. Ha a két karakter mögött szám áll akkor az a szám értékének megfelelő gyémántot jelenti." 
 Erre Athlon64+ múltkor jól sikerült hozzászólását tudnám idézni:
 http://prohardver.hu/tema/php_kerdesek_2/hsz_14593-14593.html
 "Úúú, valami nagy tákolás van készülőben! " " 
 Viccet félretéve nem értem, mi indokolja egy online játék esetén ilyen borzalom választását? Már eleve a fájlbaírás kényszerét nem értem (adatbázis, felhasználók tábla, gyémántjaik és egyéb pontjaik kigyűjtésére szolgáló táblák?), de ha már fájl, akkor is lehetne ennél ezerszer értelmesebb megoldásokat alkalmazni. Már eleve a fájlbaírás kényszerét nem értem (adatbázis, felhasználók tábla, gyémántjaik és egyéb pontjaik kigyűjtésére szolgáló táblák?), de ha már fájl, akkor is lehetne ennél ezerszer értelmesebb megoldásokat alkalmazni.
 Vagy épp az eddigi tákolmány megoldásból szeretnél kinyerni értelmes adatot, hogy átalakítsd valami értelmesre? Remélem, utóbbi. 
 Amúgy ezek sima feltételvizsgálgatások, az eddigi tömbös kódrészleted folytatásával is megoldható."Ilyen dolgokról még nem is halottam, de akkor ezek alapján érdemesebb pointerekkel végezni ezt a munkát ahelyett, hogy beindexelem az egészet." 
 Hogy mi van? Milyen pointerekről beszélsz? Én állapotgépről beszéltem neked, ami leegyszerűsítheti a tervezésedet (meghatározod az állapotokat, elvárt bemenetektől függővé teszed őket, tervezel, hogy ne legyen belőle tákolás). Nem került szóba semmilyen pointer, főleg, hogy PHP esetén a klasszikus értelemben vett (pl. C, C++) pointerekről nincs is értelme beszélni, mivel ilyen nincs, legfeljebb referenciáról. Milyen pointerekről beszélsz? Én állapotgépről beszéltem neked, ami leegyszerűsítheti a tervezésedet (meghatározod az állapotokat, elvárt bemenetektől függővé teszed őket, tervezel, hogy ne legyen belőle tákolás). Nem került szóba semmilyen pointer, főleg, hogy PHP esetén a klasszikus értelemben vett (pl. C, C++) pointerekről nincs is értelme beszélni, mivel ilyen nincs, legfeljebb referenciáról.
 Valami nagy-nagy félreértés van itt. 
- 
			
			  PumpkinSeed addikt válasz  Sk8erPeter
							
							
								#14611
							
							üzenetére Sk8erPeter
							
							
								#14611
							
							üzenetére(#14609) DNReNTi Gondoltam erre is, viszont számomra az előző megoldás az egyszerűbb.  (#14610) DeltaPower Szvsz a FIFO-hoz túl sok feltétel van ugyanis a kiválogatás több dologtól is függ. Egyszerre 2 karaktert vizsgálok, és ha két azonos karakter van egymás mellett akkor az számít egy gyémántnak, viszont ha a két karakter előtt van egy l (L) betű akkor az nem gyémánt, viszont ha I (i) van akkor pedig bankba kell helyezni és csak a felét éri. Ha a két karakter mögött szám áll akkor az a szám értékének megfelelő gyémántot jelenti. (#14611) Sk8erPeter Akkor még most át is írom azt a módot, hogy a későbbiekben ez ne jelentsen problémát. (#14610) DeltaPower neki elmondtam mitől függ, hogy mikor mi történik. Ilyen dolgokról még nem is halottam, de akkor ezek alapján érdemesebb pointerekkel végezni ezt a munkát ahelyett, hogy beindexelem az egészet. 
- 
			
			  Sk8erPeter nagyúr válasz  PumpkinSeed
							
							
								#14606
							
							üzenetére PumpkinSeed
							
							
								#14606
							
							üzenetéreIgen, azért lépi túl a memóriakorlátot, mert rossz módban nyitod meg a fájlt, de ezt már írtam korábban: 
 "Aztán: 'ab' módban nyitod meg a fájlt, ebből az 'a': "Open for writing only; place the file pointer at the end of the file. If the file does not exist, attempt to create it.", 'b' a binary mode. Az 'a' itt esetedben nem igazán indokolt, mivel egyszerű olvasást hajtasz végre. A binary mode biztos kell neked?"
 tehát
 $fp = fopen('$DOCUMENT_ROOT/../gem.txt','ab');
 HELYETT például próbáld meg így:
 $fp = fopen($DOCUMENT_ROOT.'/../gem.txt','r');
 binary mód attól függően kell, hogy van eltárolva...Pont azért idéztem neked a dokumentációt, mert az 'a'-val a fájlpointert a fájl végére teszi. Neked pont nem ez kell... (#14608) PumpkinSeed : 
 "a karaktereket az alapján kell kiszedni, hogy mi van a környezetében. Például van egy karakter akkor ha előtte egy bizonyos karakter van akkor az off, ha pedig mögötte kettővel egy másik van akkor megint off. Ez most le van egyszerűsítve de minimum 10 index távolságba mindkét irányba vizsgálni kellene a környezetét."
 Ezt a legegyszerűbb egy állapotgépes modellel megvalósítani, egy Móricka-rajzon leírhatnád papírra, mik az állapotok, aztán összekötögetve készülne egy egyszerű állapotdiagram. Vagy készíthetsz állapottáblát is. (Utóbbinak előnye, hogy ott ordít, ha valamilyen állapotnál kimaradt a kitöltés, míg az állapotdiagramnál a nyilacskázást valahol könnyen el lehet felejteni véletlenül.)
 Nem tudom, csináltál-e már ilyet. Más nyelvekben szokás enum típust szokás használni erre a célra, jelezve az állapotokat, PHP-ben kerülő megoldás vagy SplEnum van. Az állapotgépes modell egyébként elég egyszerű, switch-case-es szerkezettel megvalósítható.Kérdés, hány állapotod lehet. Mit keresel, egy szót? Számokat? Mi a feladat? Azért is kérdezem, mert lehet, hogy egyszerűbben is megvalósítható, mint ahogy próbálkozol. 
- 
			
			  DeltaPower addikt válasz  PumpkinSeed
							
							
								#14608
							
							üzenetére PumpkinSeed
							
							
								#14608
							
							üzenetéreNem tudom pontosan hogy és milyen szempontok szerint válogatsz, de egy közepesen bonyolult programozási mintafeladatra emlékeztet, szerintem ez egy 21 elemű fifo tároló.  Tegnap találkoztam egy hasonlóan bonyolultnak tűnő, de valójában egyszerű problémával: véletlen számú és sorrendű, 2x2, 1x2 vagy 1x1 méretű cellákból szabályos, 4 oszlopos html táblázatot összerakni. Először valami rekurzív rendezési megoldásban gondolkodtam, aztán rájöttem hogy 1 db for ciklussal megoldható  
- 
			
			  DNReNTi őstag válasz  PumpkinSeed
							
							
								#14608
							
							üzenetére PumpkinSeed
							
							
								#14608
							
							üzenetéreNem csináltam még hasonlót szóval csak elméletben: 
 Mi lenne ha a fájlból mindig csak 10 karaktert olvasnál be és azt vizsgálnád? Ha az megvan akkor jönne a következő karaktert követő 10-es sorozat. Beolvasáskor vizsgálni kellene h van e egyáltalán még 10 karakter, ha nincs akkor ennyi. Így végülis mindig egy 10 elemű tömbbel dolgoznál, és egy változóban csak azt kellene tárolni hányadik karakternél jársz a fájlban.Sőt akár azt is lehet hogy csak első alkalommal olvasol be 10 karaktert, aztán csak egy index-el lentebb "sorolod" a meglévő elemeket, és az utolsó helyre egy új karaktert szúrsz be. Remélem sikerült érthetően vázolni az elméletemet  
- 
			
			  PumpkinSeed addikt válasz  DeltaPower
							
							
								#14607
							
							üzenetére DeltaPower
							
							
								#14607
							
							üzenetéreAmúgy hülye vagyok, mert azt nem mondtam, hogy a karaktereket az alapján kell kiszedni, hogy mi van a környezetében. Például van egy karakter akkor ha előtte egy bizonyos karakter van akkor az off, ha pedig mögötte kettővel egy másik van akkor megint off. Ez most le van egyszerűsítve de minimum 10 index távolságba mindkét irányba vizsgálni kellene a környezetét.  
- 
			
			  DeltaPower addikt válasz  PumpkinSeed
							
							
								#14606
							
							üzenetére PumpkinSeed
							
							
								#14606
							
							üzenetéreHa csak bizonyos karaktereket kell kiszedned, akkor miért olvasod be az egészet? Stream módszerrel is meg lehetne oldani: fgetc, karakter vizsgálata, ha megfelel a feltételeknek akkor egyből fwrite egy másik fájlba, ha nem akkor jöhet a következő karakter beolvasása. 
- 
			
			  PumpkinSeed addikt válasz  Sk8erPeter
							
							
								#14605
							
							üzenetére Sk8erPeter
							
							
								#14605
							
							üzenetéreMondhatjuk gyakorlásnak is, egy ismerősömnek kell kiszedjem .txt-ből a megadott karaktereket. Köszönöm a segítséget, de újra kell tervezzem ugyanis a böngésző csak ennyit mondott: "Allowed memory size of 134217728 bytes exhausted.."  
- 
			
			  Sk8erPeter nagyúr válasz  PumpkinSeed
							
							
								#14599
							
							üzenetére PumpkinSeed
							
							
								#14599
							
							üzenetéreA kódod több szempontból is rossz: 
 $fp = fopen('$DOCUMENT_ROOT/../gem.txt','ab');
 Mivel sima aposztrófot használsz, a $DOCUMENT_ROOT nem fog behelyettesítődni, tehát vagy konkatenáld, vagy használd az idézőjelet (de inkább előbbi a kód jobb olvashatósága érdekében).
 Aztán: 'ab' módban nyitod meg a fájlt, ebből az 'a': "Open for writing only; place the file pointer at the end of the file. If the file does not exist, attempt to create it.", 'b' a binary mode. Az 'a' itt esetedben nem igazán indokolt, mivel egyszerű olvasást hajtasz végre. A binary mode biztos kell neked?Ezenkívül ezt csinálod: $i = 0; 
 while (!feof($fp)) {
 $szoveg[$i] = fgetc($fp);
 $i++;
 echo $szoveg[$i];
 }itt az $i változót megnöveled, és AZUTÁN íratod ki a $szoveg tömb i-vel indexelt tartalmát. Magyarul az echo-nak nyilván még az $i++ előtt kéne szerepelnie. Meg ellenőrizni kéne, hogy a megnyitás sikeres volt-e (elég egyszerű: a while-t és fclose-t egyszerűen berakod egy if($fp) blokkba), sikertelen megnyitás utáni fclose warningot okoz. Igaz, sikertelen fopen is azt okoz, ezért azt speciel érdemes lehet elnyomni @ karakterrel, VAGY még a megnyitási kísérlet előtt vizsgálni, hogy létezik-e egyáltalán a fájl (file_exists()). Ez egyébként csak gyakorlás? Mi a konkrét célod? ================================================== (#14600) Athlon64+ : 
 "Karaktert nem lehet indexelni."
 + (#14602) Athlon64+ :
 "Akor ne indexeld a beolvasott karaktert?! " "
 Mi az, hogy karaktert nem lehet indexelni? A kódja teljesen jól működne, ha jól használná. Sehol nem is indexeli a karaktereket, egyszerűen a karaktereket egy külön tömbbe rakja, aminek az indexét az $i adja.
- 
			
			válasz  PumpkinSeed
							
							
								#14601
							
							üzenetére PumpkinSeed
							
							
								#14601
							
							üzenetéreVagy miért nem a beolvasás során vizsgálod meg a karaktert? úgy nem kellene eltárolnod egy bazinagy tömbben... 
- 
			
			  biker nagyúr válasz  PumpkinSeed
							
							
								#14601
							
							üzenetére PumpkinSeed
							
							
								#14601
							
							üzenetérede csak én érzem hülyeségnek??? 
 milyen szöveg? betűk és számok? akkor lesz 45-90 elemű tömböd, aminél a tömb indexe a betű, és kell egy leíró tömb, melyikből hány darab van benne.
 ennek értelme is lenne, bár kevés, de több, mint te akarszmert nem lehet egy többen $t['a']-ból kettő, igaz? 
 $t['a'] = 123db
 $t['b'] = 432db
 stb
 egyáltalán mit akarsz? jó a megközelítésed?
- 
			
			  Peter Kiss őstag válasz  PumpkinSeed
							
							
								#14601
							
							üzenetére PumpkinSeed
							
							
								#14601
							
							üzenetéreAkor ne indexeld a beolvasott karaktert?!  
- 
			
			  PumpkinSeed addikt válasz  Peter Kiss
							
							
								#14600
							
							üzenetére Peter Kiss
							
							
								#14600
							
							üzenetéreIgen de nekem karakterenként kell megvizsgálnom, ezért nem jó ha egészben olvassa be. 
Új hozzászólás Aktív témák
- Milyen billentyűzetet vegyek?
- Kínai és egyéb olcsó órák topikja
- S.T.A.L.K.E.R. 2: Heart of Chornobyl
- Arc Raiders
- Gitáros topic
- CADA, Polymobil, és más építőkockák
- Luck Dragon: Asszociációs játék. :)
- Kávé kezdőknek - amatőr koffeinisták anonim klubja
- Kormányok / autós szimulátorok topikja
- Star Citizen
- További aktív témák...
- Thinkpad E15 Gen2 15.6" FHD IPS i7-1165G7 16GB 512GB NVMe ujjlolv gar
- Samsung S25 128GB Navy Blue makulátlan állapotban garival eladó
- DJI Mavic 3 Pro Fly More Combo (2 akku) RC Pro - drón szett újszerű állapotban
- Akciós áron eladó ÚJ HP Dragonfly G4 /I7-1355U/16 GB/1000GB SSD/13,5"/FHD+/400nit/1 ciklus
- Lenovo ThinkPad P15v Gen 3 i7 12800H 16GB 256GB SSD
- Azonnali készpénzes AMD Ryzen 1xxx 2xxx 3xxx 5xxx processzor felvásárlás személyesen / csomagküldés
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RTX 5060 Ti 8GB GAMER PC termékbeszámítással
- HIBÁTLAN iPhone 13 256GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS3428
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9700X 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Promenade Publishing House Kft.
Város: Budapest
 
								
 
								 
							 
								 
							 
								 
							
 
							

 
								 
							
 
								 
							 
								 
								 
								 
							
 
								 Utánanéztem, tényleg irdatlan nagy hülyeséget mondtam
 Utánanéztem, tényleg irdatlan nagy hülyeséget mondtam 
 Szerinted a beépített PHP-s függvények mit csinálnak, amikor bejárják a tömböt, hogy adott feltételnek megfelelő elemet keressenek, nem végigmennek rajta?
 Szerinted a beépített PHP-s függvények mit csinálnak, amikor bejárják a tömböt, hogy adott feltételnek megfelelő elemet keressenek, nem végigmennek rajta?  
							 
							
 
							
 (Habár ne, mert valaki még elhiszi.)
 (Habár ne, mert valaki még elhiszi.) 
							 
								 
								 A tobbi resze sem gyenge de ez nagyon felre ment.
 A tobbi resze sem gyenge de ez nagyon felre ment. 
								
 
								 
							 
								 
								 
							 
								 
							![;]](http://cdn.rios.hu/dl/s/v1.gif) ), azt meg te döntöd el, hogyan oldod meg az adatok frissítését, lapújratöltéssel vagy pedig AJAX-szal.
), azt meg te döntöd el, hogyan oldod meg az adatok frissítését, lapújratöltéssel vagy pedig AJAX-szal. 
								 
							 
								 
								 
							
 Már eleve a fájlbaírás kényszerét nem értem (adatbázis, felhasználók tábla, gyémántjaik és egyéb pontjaik kigyűjtésére szolgáló táblák?), de ha már fájl, akkor is lehetne ennél ezerszer értelmesebb megoldásokat alkalmazni.
 Már eleve a fájlbaírás kényszerét nem értem (adatbázis, felhasználók tábla, gyémántjaik és egyéb pontjaik kigyűjtésére szolgáló táblák?), de ha már fájl, akkor is lehetne ennél ezerszer értelmesebb megoldásokat alkalmazni. 
								
