Keresés

Részletes keresés

DJG Creative Commons License 2016.01.06 0 0 9923

Gyenge a géped: vegyél erősebbet. :-) Firefoxról egyre több panaszt hallani, esetleg megfontolhatnál valami böngészőt.

 

De komolyan: valaminek kell kommunikálni a világgal, a szerveroldalon levő akármivel (hogy az PHP vagy nem, az végül is teljesen mindegy). Vagyis, kell írnod egy programot, ami kommunikál a neten át, kapja a szükséges adatokat. Ha mindenáron Excelt akarsz távvezérelni, nagyjából bármelyik .NET programból könnyedén lehetséges (egyébként tele van a világ ilyen .NET-es megjelenítőkkel, szerintem az Excel teljesen felesleges ide). .NET fut Linux alatt is (Mono), de azért alaposan körül kell nézni, lehet aknákra futni.

 

Vagy pedig nem önálló programot írsz, akkor viszont csak a böngésző marad, és mivel egy böngészőben futó program nem tud kifele nyúlkálni (nagyon nagy baj lenne, ha tudna), az egész megjelenítést a böngészőben belül kell megírnod, praktikusan JavaScript lesz belőle. Minden bizonnyal ilyesmire is vannak kész számolótáblás modulok, azt a részét nem neked kell kitalálni (lásd például http://jspreadsheets.com).

 

Szóval, mindkét módon különösebb technikai akadályok nélkül megvalósítható, de nyilván nem kell írni, nem fogsz ilyet sehonnan leakasztani a szögről. Az egyéb feltételeid miatt (elsősorban Linux), alighanem a másodikat kellene megcéloznod.

Előzmény: szjozsi79 (9922)
szjozsi79 Creative Commons License 2016.01.06 0 0 9922

Korábban használtam egy szoftvert, amely adatokat kapott a világból valahonnan majd azt excel táblázatban jelenítette meg (nem picipuha szoftver volt). A lényeg, hogy volt valami kapcsolódási felület és az excel táblázatot (nem magát az xls fájlot) folyamatosan írta, változtatta az adatokat benne. Most nekem hasonló dologra lenne szükségem linux alatt. Sajnos csak a php-hoz konyítok egy kicsit és excel sincs, csak libreoffice vagy rosszabb esetben openoffice. Alapvetően lehetne böngészőben is megjeleníteni, de a gépem gyenge a firefox jelenlegi verziójához és bár a böngészőben megvalósítható a táblázat megjelenítése, már-már a processzor terheltségének határát súrolja az amúgy nem túlzottan erőforrásigényes feladat.

Az a gyanúm, hogy ahogy a böngésző a folyamatos adatokat lekéri a javascript-jquery segítségével (másodpercenkénti lekérés van), így az excel program a VB segítségével teszi/tette ugyanezt. Csak gondolom, mert az excel tábla -amit használni kellett- adott volt és meg volt nyitva.

 

Tehát ez lehetett az adatok mozgásának folyamata:

EXCEL <--> VisualBasic <--> Szoftver <--> AdatSzolgáltató

(A VB-ben nem vagyok 100%-ig biztos, csak feltételezés, a szoftver működött excel táblázatkezelés nélkül is, saját ablakban is megjelentek az adatok, az excel csak saját függvények illetve automatizálás miatt kellett.)

 

Nekem meg valami ilyen kéne:

LibreOffice <--> ??? <--> php-apache <--> AdatSzolgáltató

vagy

LibreOffice <--> php-apache <--> AdatSzolgáltató

 

Létezik-e erre megoldás?

Tanko25 Creative Commons License 2016.01.03 0 0 9921

Szia!

Köszönöm szépen a tanácsokat. Valóban a print "<img src=stat.png>"; rész fogta vissza elég látványoson a dolgot. Kicseréltem egy print "<img src=stat.jpg width=$a>";(persze ezt csak egyszer nem ismétlem már).Nem volt okos dolog tőlem több ezerszer kirajzolni azt a képet, igy most csak 90x rajzol nem milliószor. Igen az olvashatóságot is kicsit javítanom kell ezt én is észrevettem, mert most még ugyan nekem világos, de később már nem lesz olyan egyértelmű mit miért oda raktam a kódban.

Köszönöm a segítséget.

Előzmény: _szergej_ (9920)
_szergej_ Creative Commons License 2016.01.02 0 0 9920

2 oka is lehet így első blikkre: a 3 egymásba ágyazott ciklus és/vagy a sok kép.

 

1. feleslegesen mész végig 90-szer a számokon, a gyakoriságot tárold le egy tömbben, majd ha megvan, akkor csinálj belőle táblázatot. Pl. külső for-t első körben elhagyhatod:

$gyakorisag = array_fill(1, 90, 0); // igy inicializalsz egy 90 elemu (asszociativ) tombot, 0-s kezdoertekekkel

foreach ( $tomb as $tomb2 )
{
    foreach ( $tomb2 as $kulcs => $ertek )
    {
        if ($kulcs > $c)

            ++$gyakorisag[$ertek];

    }

}

majd

for ($b=1;$b<91;$b++)
{
    print "<tr>"."<td>".$b."</td>";

    print "<td>".$gyakorisag[$b]."</td>"."<td>";

    ...

   // stb

}

 

2. Le is ellenőrizheted, hogy ez a lassú része-e (szedd ki ideiglenesen a print "<img src=stat.png>"; utasítást, és nézd meg gyorsult-e valamit).

Amúgy meg nézz bele a generált html-be, valószínűleg az <img src=stat.png> több 100x/1000x fog előfordulni. Igazából ne is képet használj, rajzolj ki egy n széles divet (<div style="width:n px">, persze színnel, magassággal stb), ahol n vagy a tömbben tárolt érték (ahogy jelenleg is kirajzolsz n db 1px-es képet), de ennek sok értelme nincs, főleg ha nem egyenletes eloszlásúak, mert a táblázat nagy része ki is lóghat. Ehelyett n legyen gyakorisag[ertek] * W / sum, ahol W egy tetszőleges szám (pl. ha W 200, és az 1-es 100 számból 50-szer fordul elő, akkor a sáv szélessége 100px lesz, ha 100-szor akkor meg 200), a sum az összes szám összes előfordulásának az összege. Ha mindenáron képet akarsz, akkor meg egy nagyobb méretű képnek a szélességével játssz, de semmiképp se több 1px-es képet rakj egymás mellé!

 

Egyéb észrevételek:

- használj beszédesebb változóneveket, ahol lehet

- coding style: nem tudom, hogy a fórum törte meg-e így a kódodat, de így kb olvashatatlan (zárójelek, space-ek össze-vissza, indentálások). Ki kéne választani (alakítani) egy neked megfelelőt, és azt konzekvensen használni

- print "<tr>"."<td>".$b."</td>"; - nem muszáj összefűzni, helyette lehet "<tr><td>$b</td></tr>"

Előzmény: Tanko25 (9918)
Tanko25 Creative Commons License 2016.01.02 0 0 9919

Szia! Nem sok mindent tudok hozzátenni a témához, de php-email küldőnek én ezt használom. Elég hasonló. De ez működik :) legalábbis nálam.

 

<?php
$address = "XXXXXXXXXXXX@msn.com";
// Tárgy
$subject = "Mail-próba";
// Levél törzse
$body = $_POST['email'];
$body = $_POST['megjegyzes'];
// Fejléc
$header = "MIME-Version: 1.0n";
$header .= "Content-Type: text/html; charset=utf8n";
$header .= $_POST['email'];
$header .= "Errors-to: postmaster@valahonnan.hun";
// A törzs HTML-esítése
mb_internal_encoding("UTF-8");
$subject = mb_encode_mimeheader($subject, "UTF-8", "Q");
$content = "<html><title>$subject</title><body>$body</body></html>";
// Levélküldés és a sikeresség ellenőrzése
$success = mail($address, $subject, $content, $header);
// Visszajelzés a küldésről
if ($success) {
echo "OK";
} else {
echo "NO";
};
?>

 

Amúgy bárcsak én is tudnék ilyeneket írni de nem.... egy Forumban találtam a kész kódot. Ezúton is köszönöm a szerzőének!

Előzmény: bgmaster0123 (9916)
Tanko25 Creative Commons License 2016.01.02 0 0 9918

Sziasztok!

 

Elég kezdő vagyok a programozásban így lenne pár kérdésem.

Elsőre raktam össze egy kis php kódot, aminek a szerepe lényegében annyi lenne. hogy megszámolja egy tömbben a számokat 1-90-ig. Miközben egy egyszerű kis táblázatba kiírja és hogy picit szemléletesebb legyen a táblázat minden talált érték után 1px széles kis képet rajzol egy harmadik cellába.

Sikeresen le is fut a kód ki is rakja a dolgokat. De valahogy elég lassú lett...

Esetleg ha van valakinek ötlete más megoldása, vagy csak valami hasznos észrevétele és azt meg is osztaná velem, annak nagyon tudnék örülni.

Mivel elég kezdő vagyok, ezért ha lehet csak építő kritikát küldjetek. Elöre is köszönöm mindenkinek!


<?php
$c = 11;
print "<table id=fooszlop>";
for ($b=1;$b<91;$b++)
{print "<tr>"."<td>".$b."</td>";
$a = 0;
foreach ( $tomb as $tomb2 )
              {
              foreach ( $tomb2 as $kulcs => $ertek )
              {if ($kulcs > $c) { if ($ertek == $b){ $a = $a+1;}}}
              }
print "<td>".$a."</td>"."<td>";for ($x=133;$x<$a;$x++){print "<img src=stat.png>";} print "</td>"."</tr>";
              }
print "</table>";
?>

 

bgmaster0123 Creative Commons License 2015.12.06 0 0 9916

Helló!

Ha valaki szánna rá pár percet és meglesné a kódolást, hogy mi lehet a hiba.....
Elakadtam .... nem működik valami az e-mail küldésnél.
Ez egy demó oldal [ http://befektetesek.atwebpages.com/ ]még, vannak hibák rajta..... de az e-mailes résznél hol azt írja ki (angolul) hogy "Sikeresen elküldte az e-mailt" máskor meg hogy "Hiba van" ......... de a sikeres elküdsé után se érkezik meg az adott e-mail címre : birogabor0123@gmail.com-ra.
Első a HTML kód, aztán Java és végül PHP ...... kérdezgettem más jártas embert, de nem tudtuk megoldani. ( én nem vagyok jártas se PHP-ben se Javában....ez egy sablon)

 



Választ előre is köszönöm !

bloki Creative Commons License 2015.11.01 0 0 9915

Köszönöm az orientáló soraidat, végül is összehoztam egy működő eljárást. Bár, nem értem, hogy az eredeti miért nem jó, elvileg működnie kellene, illetve 50%-ban működik is, az oszlop-sor felcserélésekor mutatott rendellenesség okát most sem értem. A FETCH_ASSOC és a FETCH_NUM hozta el a sikert végül.

 

function kiir($a,$b,$db) { // A lekérdezés két sztringje + a new PDO
$sql=$a.$b;
$result = $db->query($sql);
if(! $result ) {die('HIBA: ' . mysql_error());}

//A fejléc megjelenítése
foreach ($row=$result->fetch(PDO::FETCH_ASSOC) as $row=>$bigyo){
     echo "<td bgcolor='#ffff00'><font size=5>".$row."</td>";}
echo "</tr>";

//A tömb ismételt betöltése, hogy ne legyen sorveszteség.
$result = $db->query($sql);
while ($row = $result->fetch(PDO::FETCH_NUM)){
     echo "<tr>";
     for ($elem=0; $elem<=count($row)-1; $elem++){
          if ($elem==0){$oszlopszine='#ffff00';} else {$oszlopszine='#ffffcc';}
          echo "<td bgcolor=$oszlopszine><font size=5>".$row[$elem]."</td>";}
     echo"</tr>";}
echo "</table><br><br>";
}

 

https://drive.google.com/file/d/0B99xvOymA1IuTV9FSTFMZTJnSk0/view?usp=sharing

 

Kösz, még egyszer!

Előzmény: bloki (9914)
bloki Creative Commons License 2015.11.01 0 0 9914

Nem véletlenül választottam a defaultot, hirtelen kellenék sok és többféle lekérdezést táblázatosan megjeleníteni, egy füst alatt.

De, kísérletképpen a $result->fetch(PDO::FETCH_ASSOC) használva, a fejlécek szépen kirajzolódtak minden tábla esetén (a functionból kivéve a kettős lépést), viszont a táblák sorai estek szét, minden esetben...

Szóval, köszönöm a tippet, elmélyedek itten, s majd jelzem, mire jutottam.

Előzmény: NevemTeve (9913)
NevemTeve Creative Commons License 2015.11.01 0 0 9913

Kezdetnek választhatnál egyet a PDO::FETCH_ASSOC és PDO::FETCH_NUM közül. Ugyanis most a default érvényesül, ami a kettú úniója (PDO::FETCH_BOTH)

Előzmény: bloki (9912)
bloki Creative Commons License 2015.10.31 0 0 9912

Sajnos a te lekérdezéseid nem adják ki az olyan formátumú és tartalmú táblázatokat, amiket az én kereszttáblásaim, de működnek, kétségtelen, az algoritmus fel is dolgozza őket, megfelelően.

 

Az algoritmus lényegi része:

 

$db= new PDO...

 

//--function kezdete --

function kiir($a,$b,$db) {
   $sql=$a.$b;
   $result = $db->query($sql);
   if(! $result ) {die('HIBA: ' . mysql_error());}

$fejlec=true;     //a lekérdezés első sora a fejléc a while-ciklus először ezt írja ki.


while ($row = $result->fetch()){
   if ($fejlec==true){
   $mezok=(array_keys($row));   //a fejléc elemeinek beolvasása
   $hossz=(count($row)/2)-1;      //az oszlopok számának meghatározása: név+index ezért /2. A -1                                                    //egy az empíria végett kell.
   echo $hossz;


   for ($m=0; $m<=(count($row)-2); $m++){   //a ciklus kiírja a fejlécet, a kettős $m++ átugorja az                                                                       //indexeket, s csak a nevek kerülnek kiírásra. A -2                                                                           //megint empíria.
   echo "<td bgcolor='#ffff00'><font size=5>".$mezok[$m]."</td>";
   $m++;}

 

  $fejlec=false; }

echo "<tr>";

for ($elem=0; $elem<=$hossz; $elem++){       //A ciklus a táblázat többi sorát jeleníti meg.
   if ($elem==0) {$sarga='#ffff00';} else {$sarga='#C0C09a';}
   echo "<td bgcolor=$sarga><font size=5>".$row[$elem]."</td>";}

   echo"</tr>"; }
echo "</table><br><br>";}
//-- function vége --

 

 

echo"<p align='center'><font size=10>Létszámok</font><p>";
echo"<table border=1 cellpadding='10' align='center'>";

 

$a="TRANSFORM Count(vezeteknev) AS CountOfvezeteknev SELECT csop, Count(vezeteknev) AS összesen FROM koleszosok ";
$b="WHERE jogviszony='aktív' GROUP BY csop PIVOT lakikmegye";

 

kiir($a,$b,$db);

 

 

---------

Nem értem, miért áll elő az a jelenség, amit első beírásomban jeleztem. Azt megfigyeltem, hogy a baj akkor lép fel, mikor a fejlécbe számok íródnak, pl. itt a csoportok (csop) nevei: 1-5. A csop szöveges mezőnek van definiálva a táblában, tehát sztringek elvileg, mint a megyék nevei. De, lehet a php mégis megzavarják? Ragaszkodnék e formulához, mert mindenféle lekérdezést szép táblázatosan megjelenít, rugalmasan, csak a három kezdőparamétert kéri hozzá.

Előzmény: NevemTeve (9911)
NevemTeve Creative Commons License 2015.10.31 0 0 9911

Talán hiba van a programodban. Hagyományos programozói ésszel ilyen SQL-lel próbálkoznék:

SELECT lakikmegye, csop, COUNT(*)

FROM koleszosok

GROUP BY lakikmegye, csop

ORDER BY lakikmegye, csop;

azután a táblázat kialakítását PHP-ben csinálnám

 

Note: ha flexibilisre akarjuk csinálni (vagyis a csoportok száma nem fix), akkor előtte egy SELECT DISTINCT(csop) FROM koleszosok ORDER BY csop; is futhat.

Előzmény: bloki (9910)
bloki Creative Commons License 2015.10.31 0 0 9910

Php-probléma. Access-ben működik minden lekérdezés. Php-nál a sor-oszlop felcseréltek torz eredményt adnak. Ugyanaz az php-algoritmus generálja a táblázatokat, mégis hol jó, hol rossz lesz az eredmény. Egyelőre elvi síkú tanácsot várok, mi lehet emögött. Találkozott-e más ezzel a jelenséggel.

Előzmény: NevemTeve (9909)
NevemTeve Creative Commons License 2015.10.31 0 0 9909

Egészen biztos, hogy ez a kérdés a PHP-hez tartozik?

Access van pl ilyen topik: MS Access - Segíccség kéne, de gyorsa

Előzmény: bloki (9908)
bloki Creative Commons License 2015.10.31 0 0 9908

Szervusztok!

Access-fájlbeli kereszttáblás lekérdezésekkel van bajom. Példaként: az elsőt szépen megjeleníti

az algoritmusom, a másodikat (sor és oszlop felcserélve) csonkán ás elcsúszva, egyes oszlopok hiányoznak. Mi lehet ennek az oka? Hibaüzenet nincs. A tesztelések szerint nem az algoritmus rossz - a tábla szélességét kiszámolja, a fejlécet elkészíti -, a probléma már a lekérdezésnél jelen van, mintha nem tálalná az összes adatot. Próbálkoztam különféle szintaktikákkal, itt is hibajelzés nélkül - zárójel, aposztróf, táblanevek -, de a helyzet nem változott.

 

1.

$a="TRANSFORM Count(vezeteknev) AS CountOfvezeteknev SELECT csop, Count(vezeteknev) AS összesen FROM koleszosok ";
$b="WHERE jogviszony='aktív' GROUP BY csop PIVOT lakikmegye";

 

https://drive.google.com/file/d/0B99xvOymA1IuSXEyNzhmQjhKaEE/view?usp=sharing

 

2.

$a="TRANSFORM Count(vezeteknev) AS CountOfvezeteknev SELECT lakikmegye, Count(vezeteknev) AS összesen FROM koleszosok ";
$b="WHERE jogviszony='aktív' GROUP BY lakikmegye PIVOT csop";

 

https://drive.google.com/file/d/0B99xvOymA1IuWkxhcmtGbU55THM/view?usp=sharing

 

Segítségeteket, ötleteiteket előre is köszönöm!

NevemTeve Creative Commons License 2015.10.11 0 0 9907

Értelemszerűen megváltoztatni a jogosultságokat. De még inkább megnézni a hibakódot/hibaüzenetet, mert amit valahol a neten olvasni vélsz, az nem garantáltan vonatkozik a te esetedre.

Előzmény: erdeidominik99 (9906)
erdeidominik99 Creative Commons License 2015.10.11 0 0 9906

Sziasztok! Egy olyan kérdésem lenne, hogy a file_put_contents() nem írja át a fájlt, ahogy utána olvasgattam, azt találtam, hogy azért mert nincs jogosultság. Erre mi a megoldás? Előre is köszi!

szjozsi79 Creative Commons License 2015.10.11 0 0 9905

Nem lenne haszontalan egy ilyen függvény, de inkább js-ben kéne ezt megoldani.

Előzmény: szjozsi79 (9904)
szjozsi79 Creative Commons License 2015.10.11 0 0 9904

Van-E php-ben olyan gyári függvény, ami két összetett objektum (tömb és objektum, fa több elágazással, 3-4 "mélységű", esetenként 100 vagy akármennyi ággal -tömb) különbségét képezi? Ha nincs ilyen, akkor meg kell írnom, de akkor kéne egy olyan függvény, amivel egy előre nem látható mélységű objektumot kéne bejárni. A lényeg, hogy a két objektum közül objektum2 nagyobb, tehát bizonyos tulajdonságok értéke nagyobb, illetve lehetnek olyan tulajdonságai -ágai-, amelyek objektum1-ben nincsenek.

Objektum2-t kéne végigjárni, és ha objektum2->akármi[x]->...->értékhez létezik objektum1->akármi[x]->...->érték, akkor különbség->akármi[x]->...->érték egyszerű kivonás, ha pedig objektum1->akármi[x]->...->érték nincs, akkor különbség->akármi[x]->...->érték = objektum2->akármi[x]->...->érték legyen.

Ez esetben az iteráció mikéntje a kérdéses.

TeleTeve Creative Commons License 2015.10.05 0 0 9903

Mint ahogy a hiba üzenet mutatja: "Call to undefined function: imagecreate()"

Feltehetőleg nincs a kódban definiálva az imagecreate function vagy ahonnan meghívódik ott éppen nem elérhető.

Előzmény: 407fan (9880)
TeleTeve Creative Commons License 2015.10.05 0 0 9902

Sziasztok,

 

Egy kis segítségre lenne szükségem, kezdő php-s vagyok és nagy fába vágtam a fejszémet egy program átalakításával kapcsolatban. Nem tudok kiigazodni az OOP elvét követve azon, hogy elviekben hogyan van "ideálisan" szervezve az, hogy elérhető legyen különböző class-okban található function-ok egy újonnan létrehozott fájlban. Kérlek titeket, hogy egy kicsit bővebb magyarázatot adjatok, hogy könnyebb legyen megérteni.

 

Köszönettel

TeleTeve

szjozsi79 Creative Commons License 2015.09.06 0 0 9901

ööö ... hát ez meg mi?

Gondoltam, bemásolom ide annak a php-filenak a tartalmát, amely az api-lekérdezést csinálja - és láss csodát, sérült a fájl, vagy valami történt vele.

 

^Ś™yjÒąÜ&3núVCÿ!/Ð_1èבwÙÂaÀaXq H":ij¹&Ml‡g‚o™gÚ”‡w‘
ÙŹFMê–Cj¥îhïFªñ ŹąŚ7Zs7M*x£šťťÆ|7¼Eºx ľ­]­M¯ÖìŤ¨ì­5ÖÜی̘ƒñ¸Íìˇ¨ý…ÊÖ¹‰â¢7ÔœÞj^…&jÅwqˆ¾袴.ĺ°ûˆq¯:Ѿą¾w²YVùìÌG®z)sïkÚ1I°³3Æ"JÌ*u
Gqˆ¤
zu Ž.„Ñøú7| 4Çu ‘.ë@Ýî ›¨ (ÆÑˇQŒÒàqýkèuë@2Ý›x`I —n<ŹtY4®–}ã:Ô$Òí’fý+ŚLÚu Šn†u ‡ðÛŤ%t[Ñdé#jׁø¹ˆŤõ³ÄO¾eºÑ¤Œu {nŸÝÜÖÛ¨Ú–ŒÑæˇf—ÛߌC]hŸ;½êßqťľú;ìdw½~‚ˇ[Q?ªýso“> ë]ÔKÕ{Xé ë¯©ã]v?˜NêopÄÃ:P@øÖ” åæu yn'ˆê@ëÜaw:þ6uëc

 

Ez van benne, de a leafpad teljesen másképp mutatja.

Előzmény: szjozsi79 (9900)
szjozsi79 Creative Commons License 2015.09.06 0 0 9900

Amíg működött, addig egy szolgáltató api-ján keresztül jött egy nagy méretű adatstruktúra, melyek mérete egyenként 20~30kB.

Apache cache könyvtára volt a /var/cache/apache2/mod_cache_disk/ - ha jól emlékszem, ebből töröltem a benne lévő .log fájlok, amiből elég sok darab össze tar-gzipelve. Meg volt benne egy darab 1 GB-os log fájl. Gondoltam, hogy a cache-ben levő log fájlok nem szükségszerűek a szerver működéséhez. Alapvetően kevés a helyem, az adat pedig gyorsan jön, amit menteni kell, így az 1 GB hely felszabadítása életmentő lehet ilyenkor.

Előzmény: NevemTeve (9899)
NevemTeve Creative Commons License 2015.09.06 0 0 9899

Mi az az Apache cache könyvtára? Milyen logokra gondolsz? Hogyan 'kaptál egy szép hosszú json stringet'?

Előzmény: szjozsi79 (9895)
szjozsi79 Creative Commons License 2015.09.06 0 0 9898

És még mit látsz benne? Nálam pl. nem gördíthető.

Nálad pl. milyen karakterek jelennek meg? Nekem kb. minden második fekete rombusz, benne fehér kérdőjel.

Vannak köztük kínai, koreai, és elvétve arab betűk is. Lehet, hogy valami kódolási probléma lehet, de ebből akkor sem jön ki semmi, főleg nem egy json-string.

Előzmény: Laja73 (9897)
Laja73 Creative Commons License 2015.09.06 0 0 9897

Számomra az az érdekes, hogy gördíthető a hozzászólásod. Ilyet még nem láttam az index fórumon.

Előzmény: szjozsi79 (9895)
szjozsi79 Creative Commons License 2015.09.06 0 0 9896

Mondom, ez nem frankó, biztos belerondítottam valamit az apache szerverbe. Eltávolítás, újratelepítés (linuxon) válasz továbbra is ugyanez. Lehet, nem is az apache szerverrel van a hiba?

Előzmény: szjozsi79 (9895)
szjozsi79 Creative Commons License 2015.09.06 0 0 9895

Van nekem egy php-json "projektem", ami szépen működött is az elmúlt időszakban, aztán észrevettem, hogy az apche cache könyvtára egyre dagad, gondoltam, kitörlöm belőle a szaporodó log-fájlokat. Előzőleg kaptam egy szép hosszú json stringet, most viszont egy hosszú értelmetlen karaktersorozatot kapok, amiből nem lehet kihámozni semmit. Valami ilyesmit:

 

^��yjұ�&3n�VC��!/�_1�בw��a�aXq H":ij�&Ml�g�o�gڔ��w� ��FM�Cj��h�F�� ���7Zs7M*x������|7�E�x ��]�M��쫨��5��ی̘���취���ֹ��7Ԝ��j^�&j�wq�� 袴.ĺ���q�:Ѿ��w�YV���G�z)s�k�1I��3�"J�*u Gq�� zu��.����7| 4�u �.��@���� (�ѷQ���q�k�u�@2ݛx`I��n<��tY4��}ã:�$���f�+�L�u��n�u���۫%t[�d�#jׁ�������O�e�Ѥ�u {n����ۨږ���f���ߦC]h�;����q���;�dw�~��[Q?��so�> �]�K�{X� �믩�]v?�N�op��:P@��� ��u yn'��@��aw:�6u�cD�0�6w����&��0���o�}�]�vGw#��~��a0��r��q�{���]� �a��;N��y� �Gs�ˣ �pM:"���~<-��b~�cǺW ���p=���{ �3z�s�ު�c��5�A�*棑vi�T}���9?�1�-s~D}*� �Zb��m��g���_ �V�����:F�8D�|����r Q��/*�Ŭ3�g���k )�yz �M֍�̢ �#�����p������C�z,�[�?�X8�p=�EW-4���1�R;����p��(&M7, �( S�o�K@���J��� ��~�&���|�5}.!r��}�C�r���nL�[9B��Ø���T �c5Ea��f"����Y*����9��Bǰ�}�-���®�Qn�B�;b��/���C� [L�vl��@]��ε?���z��ca�E�Wx��$���*M�k���� ��}�_����0�q �5�-۹H۲��,5���ԓ��l<9��/3;��W���Ź�v!�����7 Jdd�>ާ���8B����c� �S?/9t��X#�)��7g�]�>?�3��axx�K㚯�w'!��I���:�8z q����gr�$k�i����D}���}:����dć��֋�pL~����m�a����| #������L �}��i$j;Lk~ �����4��t��-v�������1X��: ��Ţƞ����l@Sn_���� }x/^�ƻ�(>�r��������Nwx�E/~r�� D��xZ��G: >M��|o�������Oa�CC/����̓]��Ө���'�H+��ss�k�����s�����7�]��D /��ه1F�I3�b?>�T��7/N�Ʒi���A�6���ݛ���q�-�����|�?_T;��Í���������wi鷇 I�+��$���! n��Ӄ�W���⎇�o�b�{-�Ç�?>b�?u�?;yҁ�]-n���c�=-r|�1� ����v��ɴ��ޫ��-,~����w7��}�ƽ{џ���q{�f5Ap��q������0bk�=!·4nМ�!��)�;:|�����ђ���ڴt��?�B9-��F����-:Ռ�CT���t'�jd���'9�X�M���+5w�W��7{i)=z�~YT@�H^Y��{h%>4|��>D���ռ2�֖7�;yv�l_�mA[7�cwc�kn �А��8Ćy u�Y����~G�����> �G9�D���0z��ѣE0����� k��S1q��w .@�$�"L�@�� *Uni���z��B�v(i1�ᚚ�� �-s�)l���@����p`��ֵ(�����"��U=�K�!��?�O��� ,F�2�<�����kD8:��Er�ϭ��St|D� ��B?�w��%�iҭ]�n1�kXxO5��T��G��� �#��5��ᄤԏCE���7/g� H�w:O��_0>�:(�qW�� ET�GsB��=�>��� "k���y /^���3�FD��N�?B�Ў�t:�ש],��/ٵO���C[4�V��/j|�VV�E��L�.�� 0*���^;�X���2D ���>r��{1��1*��:������]�rp��$G�7�WiF#P�Å�d�E`��f�@&�b��  ��u��ޣ� ��dG�s��&~��!�R�c��P�������72�W�p��(����(�[E�UH g>�[��]���K6�`��Զ#(f��+�0�b������ow�~8D�f1m�|���� �� wo���鵌+�(�:��L�Q>W������_[)!�[�� ��Q���X`�Uf��jQ����و7�&��PGCDC]�h)��.޿%���#9&5 ��Z�-�D�F��0�.M��Lb��������ԤԵMߤ� ��qE��չ����%��B�;�)�^ȅ���v�׌�J|A�"UM+��������� oɍq& |bǨXɛ%�מ�J<�o�q>�!�x�������Aǣ�@��!o'�C�.����+ ��*"C�zq���0��2���5�i�Z�^h��t������Y�%l����;2C���NKҼo�b���r�H ���N �I���+���C�_�o������(�/����> L��ш���pM7��� �&2d��E�X���~�hڥVO�E�#� d��xsFh����[�':L�pj�uh(ms�)��Uy�z6u]:�� N��L����a��>㵵�*������%B�c9����r)�[ѡw�Sf��N�#�K�ς4e��� 3]���6�{�! �7� �}���.�ڒ��ZR�5�C`š_si A��R �������J](r/t��>�bO�+ė ?��mQ@1n��%�KK�vYC@�4 �)T]��yί�_��on��S��<�*� ����.C���F��(ޝ�S����֖�)�mwX�x���'[[�5�#>�J#��loמ�����w��z`;�~� ��ތ���E|�x�����A8���d��h룪 CT@+��&i1<ۅ�A'�EN��f��f�wk��5�^[��c�,t I���28Ȉ��d� �ssңo.4�+54i7,/��o�c���� >�+G��[3���(�0"��;aò��� �Q<��t ?`�خ=ZukH�F�žܙ����N�v��8��W:�l>��`P��Q9,�`Қ�d�P-凍 �6��wC���iE����U䓈a���EvA�:� ,���LK,M[��v��[˚+�P�Y�p�� IÌ>Q����[%�J�'�-�"��H�� &�1�Ǣ�3�FZ��?�,�`�yO�E����� ��нh�ġ ,��A�`�������vDR�_������t55�UO�M$��13*�߄�(A_�d ��J�� �������!%��$�.�3`�t�,�/���||Uą0�N ���f#�> S��CB�mxǍ�4���k�����������n�9����{xdo6�oU9��Dj��rg�< &�A�2�nܜ�����e�EX��VQ�qB�f�Ud��q�9h�2��6�jU��a�~Sڼ*@��r$�Y� �~T.2~�P W�B��>J6r��l�*��е�^�QS`�ꅣ�WK��9.S�M�8�>Z����H:_���Q��< {��� ~�����a#���A�� �A㣰�=�d�ԟP �����^��({���� !�ѵ� +$�`_O�K"�<�E�e���cm�d2��gf��j��U�Wͳjag��E�ղ,讖���Fw�����j~Y ���/ꮖeAw�����~Ŋ�Q�` �%y�=*v�<Hz��im��r���H�����

Laja73 Creative Commons License 2015.08.14 0 0 9894

Persze hogy lehet de mivel alapból objektum-barát (nem kell hozzá semmi include stb) így kihasználom hogy legyenek nyilacskáim a kódba' 

Előzmény: NevemTeve (9892)
DJG Creative Commons License 2015.08.14 0 0 9893

A sebezhetőséget talán hagyjuk is, az annyira nyilvánvaló blődli – egy programozási nyelvi konstrukció nem lehet sebezhető, egy rosszul megírt program lehet, de nem a programozási nyelv egy absztrakt eleme. Ha egy programot sebezhetőre írsz, annak semmi köze az OOP-hez. Nincs az OOP-ben abszolúte semmi, amitől könnyebb (vagy nehezebb) lenne sebezhető programot írni.

 

Az erőforrás meg, ha meg nem haragszol, nagyjából ugyanilyen blődli. Az OOP-nek egyetlen ilyesmije lehet, a függvények hívására szolgáló virtuális tábla, de a mai fordítóprogramok szintjén ez a legkisebb pluszt sem jelenti már.

 

Minden bizonnyal láttál valahol valami programcsomagot, ami véletlenül egyszerre volt OOP és lomha, sebezhető. És akkor? Mi közük van ezeknek egymáshoz?

Előzmény: DJG (9891)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!