[ geenije @ 15.11.2014. 22:02 ] @
Imam neku aplikaciju koja između ostalog iz mase .ini fajlova izvlači određene podatke. Neki ini fajlovi u imenu sadrže naša slova čćžšđ...
Zatim ime fajla i određene podatke iz njega snima u svoj jedan novi .ini fajl.

Problem je u tome što se imena fajlova koji sadrže naša slova ne upišu dobro već umesto naših slova imam znak ?

Koristim Windows 8 i aplikaciju WAMP kao apache+php server. Najluđe je što ortaku sve normalno čita, on ima neki linuks i ne znam šta koristi kao servere, kaže jedino nam se apache možda razlikuje. Probao sam da instaliram XAMPP na ubuntu, ali .run fajl se ne pokreće, niš se ne dešava, dao sam mu chmod i pokrećem ga duplim klikom, run with, ./ ma ništa se ne desi tako da ne mogu da probam iz linuxa.

Windows mi u regional settings pa bla truć ima Serbian latin za encoding.

U php.ini sam upisao

mbstring.language = "uni" (probao i sa sr_RS)
mbstring.internal_encoding = "UTF-8"
mbstring.http_input = "UTF-8"
mbstring.http_output = "UTF-8"

U httpd.conf
AddDefaultCharset utf-8

Kod, malo prećerah šta sve nisam upisao al opet džaba, probao sam i da uvijam inpute u utf8_encode decode i čuda al džaba isto:
Code:

<?php

mb_internal_encoding('UTF-8');
mb_http_output('UTF-8');
mb_http_input('UTF-8');
mb_language('uni');
mb_regex_encoding('UTF-8');
ob_start('mb_output_handler');
header('Content-Type: text/html; charset=utf-8');
setlocale(LC_ALL, '[email protected]', '[email protected]', '[email protected]');

$path_to_check = 'C:\Users\oktopod\AppData\Roaming\VanDyke\Config\Sessions\\';
$hostname = 'Hostname'; $protocol = '"Protocol Name"'; $current = ''; $file = 'sessions.ini';
$matchesHost[1]=$matchesIP[1]=$matchesProtocol[1]='';
foreach(glob($path_to_check.'*.ini') as $filename)
{
  foreach(file($filename) as $fli=>$fl)
  {      
    if(mb_strpos($fl, $hostname, 0, 'UTF-8')!==false)
    {
        $result = $filename.' on line '.($fli+1).': '.$fl;
        echo $result; echo "<br />";
        preg_match("/Sessions\\\(.*?)\b.ini\b/", $result, $matchesHost);
        preg_match("/Hostname\"=(.*?)$/", $result, $matchesIP);
        $matchesHost[1] = trim($matchesHost[1]); $matchesIP[1] = trim($matchesIP[1]);
        $current .= $matchesHost[1] . "##" . $matchesIP[1] ."\n";
        file_put_contents($file, $current);
    }            
  }
}


?>


Primer komada fajla, snimiti kao npr Bežanija.ini u path koji podesite u $path_to _check varijablu

D:"Is Session"=00000001
S:"Protocol Name"=SSH2
D:"Request pty"=00000001
S:"Shell Command"=
D:"Use Shell Command"=00000000
D:"Force Close On Exit"=00000000
D:"Forward X11"=00000000
S:"XAuthority File"=
S:"XServer Host"=127.0.0.1
D:"XServer Port"=00001770
D:"XServer Screen Number"=00000000
D:"Enforce X11 Authentication"=00000001
D:"Request Shell"=00000001
D:"Max Packet Size"=00001000
D:"Pad Password Packets"=00000001
S:"Sftp Tab Local Directory"=C:\Users\oktopod\Documents
S:"Sftp Tab Remote Directory"=
S:"Hostname"=192.168.192.168
[ Nemanja Avramović @ 16.11.2014. 09:42 ] @
Ne znam tačno šta može da bude tvoj problem, ja uvek izbegavam da koristim naša slova u imenima fajlova, ili bilo koja druga slova koja nisu u engleskom alfabetu.

Sad sam na brzinu probao i dobijam "teÅ¡tčćžšđ.txt" (teštčćžšđ.txt). Malo sam i pretraživao i čini mi se da nema efikasnog rešenja (barem za Windows): http://stackoverflow.com/quest...ull-path-have-utf-8-characters

S druge strane, XAMPP se na Linuxu pokreće sa:

Code:
sudo /opt/lampp/lampp start


Ako pričamo o istom XAMPPu
[ geenije @ 16.11.2014. 15:54 ] @
Hvala na odgovoru

I ja sam malo pretraživao pre nego što sam postavio pitanje i izgleda da stvarno nema rešenja za Windows. Na žalost, pišem aplikaciju koju ćemo koristiti na poslu i služi za telnet/ssh2 na rutere i da odradi niz komandi koje se često koriste, a iz sesija jednog programa (SecureCRT) izvlači u svoj sessions file, tako da je potrebno održavati ažurnim samo sesije tog programa koji je nezaobilazan da se koristi.

Naša slova mogu da izbegnem, ali mi je nekako glupo da mi sesije imaju imena Nis, Sabac, Bezanija, Cukarica itd, kao da sam nepismen, evo i ovde koristim sva naša slova, možda preterujem ne znam.. ali treba da prezentujem kolegama i šefovima aplikaciju koja od samog starta počinje sa kompromisima...šta je sledeće pitam se kapiraš...prosto ne želim ništa da izbegavam u 2014oj godini kao što jesam svojevremeno 2003e kada sam poslednji put radio ozbiljniju aplikaciju. Majku mu nije ovo doba Windowsa 98SE

Što se xampp tiče, kad se downloaduje .run fajl, on treba da se pokrene i onda se on instalira tj raspakuje u /opt/lamp međutim meni se ništa ne pokrene, ništa se ne desi, dupli klik kao da nisam ni kliknuo, iz konzole ./xampp-nešto mi samo opet izbaci prompt, nema greške ali nema ni akcije, folder /opt je apsolutno prazan. Chmodovao sam da fajl može da se izvrši.
[ Nemanja Avramović @ 16.11.2014. 16:54 ] @
U moje vreme se nije tako instalirao na Linuxu :)

Pogledaj Prvo pitanje ovde: https://www.apachefriends.org/faq_linux.html



Citat:
Choose your flavor for your linux OS, the 32-bit or 64-bit version.

Change the permissions to the installer

Code:
chmod 755 xampp-linux-*-installer.run


Run the installer

Code:
sudo ./xampp-linux-*-installer.run


That's all. XAMPP is now installed below the /opt/lampp directory.


Ja bih još dodao možda:

Code:
chmod a+x xampp-linux-*-installer.run


...pre instalacije (pre sudo ./xampp-linux-*-installer.run)
[ geenije @ 16.11.2014. 22:23 ] @
Ne razumemo se, sve ja to odradim ali se ne desi NIŠTA. NIŠTA.



Change the permissions to the installer

chmod 755 xampp-linux-*-installer.run

Run the installer

sudo ./xampp-linux-*-installer.run

Citat:
geenije:

Što se xampp tiče, kad se downloaduje .run fajl, on treba da se pokrene i onda se on instalira tj raspakuje u /opt/lamp međutim meni se ništa ne pokrene, ništa se ne desi, dupli klik kao da nisam ni kliknuo, iz konzole ./xampp-nešto mi samo opet izbaci prompt, nema greške ali nema ni akcije, folder /opt je apsolutno prazan. Chmodovao sam da fajl može da se izvrši.
[ Nemanja Avramović @ 17.11.2014. 07:50 ] @
Nemoj da kucaš bukvalno xampp-linux-*-installer.run (mada bi i tako trebalo da radi), kucaj "xampp-lin" pa udari tab, on će da ti popuni ime fajla tačno onako kako treba

Moraću da podignem ubuntu samo da probam xampp, nemoguće da su ga tako zakomplikovali, ranije si samo raspakovao tar.gz, pokrenuo instalaciju koja sve odradi i onda ga pokreneš sa sudo /opt/lampp/lampp start
[ Jbyn4e @ 17.11.2014. 09:00 ] @
Citat:
Nemanja Avramović:
Citat:

Change the permissions to the installer

Code:
chmod 755 xampp-linux-*-installer.run



Ja bih još dodao možda:
Code:
chmod a+x xampp-linux-*-installer.run


...pre instalacije (pre sudo ./xampp-linux-*-installer.run)

U 755 je već rwxr-xr-x, tako da je x flag za execute već postavljen. a+x postavlja x flag za sve, koji je već postavljen sa 755... tako da je ovo definitivno višak.

Citat:
geenije:
Ne razumemo se, sve ja to odradim ali se ne desi NIŠTA. NIŠTA. :)
Change the permissions to the installer
chmod 755 xampp-linux-*-installer.run
Run the installer
sudo ./xampp-linux-*-installer.run
Citat:
geenije:
Što se xampp tiče, kad se downloaduje .run fajl, on treba da se pokrene i onda se on instalira tj raspakuje u /opt/lamp međutim meni se ništa ne pokrene, ništa se ne desi, dupli klik kao da nisam ni kliknuo, iz konzole ./xampp-nešto mi samo opet izbaci prompt, nema greške ali nema ni akcije, folder /opt je apsolutno prazan. Chmodovao sam da fajl može da se izvrši.

Malo glupo pitanje, kad si otvorio konzolu, da li si promenio direktorijum na onaj gde ti je .run fajl? Nemoguće da ništa ne ispiše.... uostalom, ne shvatam zašto koristite te xampp kombinacije kad možete normalno instalirati apache, mysql, php...
[ geenije @ 17.11.2014. 10:23 ] @
Hvala svima na pomoći

Probao sam i uploadovao fajlove na jedan domen što imam, neki sajt, dobro se setih piglu, tamo takođe ne radi, hostuje se kod Verata. Možda sad tamo treba nešto da dodam u PHP preko CPanela ne znam...ne vidim da može išta da se modifikuje.



@Nemanja, naravno da dopunjavam sa tab.

@Jbyn4e, ulazio sam i u direktorijum (Downloads) a radio sam i bez ulaženja kucanjem cele putanje. Kada sam u tom direktorijumu kucam sudo ./xam(tab) da dopuni i enter.

Ne desi se apsolutno ništa. Bez da išta mulja i radi, samo se istog momenta ponovo pojavi prompt. Direktorijum /opt ostaje prazan kao što je i bio.
Probao sam i desni klik na ikonicu, postavljeno je da bude executable, prava su rwxrwxr-x. Proba dupli klik, probao ono open with kako se zvaše, birao tamo neke system install ili kako se zvahu i džaba, tu hoće nekad da mulja časovnik pola minute al opet nema nigde posle ni lamp ni xamp fajla na celom disku.

Gledao sam na google, nema nas puno sa ovim problemom ali nas ima a odgovori su kao ovde, uđi u folder i slično što sam naravno uradio...i na kraju bez odgovora.


Iskreno, linuksom da se smaram ne želim, ne znam ni što ga imam na mašini, valjda neki ego trip, kad ne možeš ni običan fajl pokrenuti, zamisli koja mi je motivacija da krenem u akciju zasebne instalacije svega, drivere za wirelles sam čekao 6 meseci, instalacija drivera u linuxu mi utiče da me zeza od tad wirelles u windowsu, neverovatne stvari se dešavaju oko ili nelogičnih ili trivijalnih stvari, tako da Windows samo napred.
[ Jbyn4e @ 17.11.2014. 12:07 ] @
Kad se pokrene .run, treba da otvori GUI (grafički interfejs) za instalaciju. Ako nemaš X-e podignute, izgleda da se onda ništa ne desi.

U tom slučaju preporučuju da se proba sa

Code:
sudo ./xampp-linux-*-installer.run –-mode text

Ili eventualno unattended mode (pokreni .run sa --help i dobićeš i ovo:)

Citat:
--mode <mode> Installation mode
Default: qt
Allowed: qt gtk xwindow text unattended


[ geenije @ 17.11.2014. 12:42 ] @
Ništa se ne desi...

[ Jbyn4e @ 17.11.2014. 13:38 ] @
To bi moglo da znači da ti nije dobar installer (nije se dobro downloadovao...) proveri veličinu, evo kako to izgleda kod mene u VM:

Citat:
[email protected]:~$ ls -l xampp-linux-x64-1.8.3-5-installer.run
-rwxr-xr-x 1 sf sf 124487989 Aug 21 22:03 xampp-linux-x64-1.8.3-5-installer.run
[email protected]:~$ sudo ./xampp-linux-x64-1.8.3-5-installer.run --mode text
[sudo] password for sf:
----------------------------------------------------------------------------
Welcome to the XAMPP Setup Wizard.

----------------------------------------------------------------------------
Select the components you want to install; clear the components you do not want
to install. Click Next when you are ready to continue.

XAMPP Core Files [y/N] :

[ geenije @ 17.11.2014. 14:32 ] @
Hvala i da me ne shvatiš pogrešno jer si se potrudio....al aj da batalimo :) Idemo dalje u priču oko najobičnijeg instalera koji sam downloadovao, kaki bre linux više ne pada mi na pamet. Da proveravam sad još dal se dobro downloadovao, ako nije onda...ma ćao. Na kraju svakako neću na poslu da podižem linux da mi bude server jer je tamo ili Windows ili Solaris a tu me u startu mani instaliranja.

Generalno znači ovo sa našim slovima ne radi ni na web hostingu, šta da pitam ortaka kojem radi da pogleda kod sebe u podešavanjima, on je developer u jednoj firmi i kako to biva osim PHP ne zna niš van CMSa :)

Da mi pošalje ako može php.ini, apache fajlove...?
[ plus_minus @ 17.11.2014. 14:57 ] @
^^ Na linuxu se 'Mićo' sve to instalira jedno po jedno. Prvo "apt-get/yum/pacman"-uješ apache/nginx, pa onda *sql koji ti treba pa onda php, ili prvo php pa onda sql.. E tako.. Posle toga, start/stop apache/mysql po potrebi. Neke distribucije imaju svoj "Lamp" stack koji nije ništa drugo nego automatizovana skripta koja odradi tri komande u konzoli umesto nas. A to sa xampp-om na linuxu, to je (po meni) čist nepotrebni bloat. -Svetogrđe bre. - Kakvi crni instaleri... :)
[ geenije @ 17.11.2014. 15:04 ] @
Tako je pobegnimo od problema u nove probleme zato manimo linux i aj da vidimo šta je rešenje prvo navedenog problema

A koliko vidim biće uskoro i tema kako vratiti Windows bootloader hehe pošto prošli put kad sam ga vraćao na mesto gruba sam dobio poruke da nema operativnog sistema pa sam jedva vratio sve
[ Nemanja Avramović @ 17.11.2014. 15:39 ] @
Može i grub da podiže Windows, šta petljaš tamo gde ne treba :P

Slažem se da se na linuxu sve pojedinačno instalira, ali probao sam i xampp - radi i sve od jednom kad se instalira doduše nikad ga ne bih koristio za produkciju, kao što ga i ne koristim, ali za dev - što da ne?

Nego, da se vratimo na temu je l' neko uspeo da koristi naša slova u imenima fajlova? Ja koliko sam video, pre PHP-a 6 teško da će moći.

[ Jbyn4e @ 17.11.2014. 15:52 ] @
Ovaj tvrdi da može sa posebnim extensionom:
http://stackoverflow.com/quest...ons-in-php-using-utf-8-strings



Citat:
Using the com_dotnet PHP extension, you can access Windows' Scripting.FileSystemObject, and then do everything you want with UTF-8 files/folders names.

I packaged this as a PHP stream wrapper, so it's very easy to use :

https://github.com/nicolas-gre...rk/Utf8/WinFsStreamWrapper.php

First verify that the com_dotnet extension is enabled in your php.ini then enable the wrapper with:

stream_wrapper_register('win', 'Patchwork\Utf8\WinFsStreamWrapper');

Finally, use the functions you're used to (mkdir, fopen, rename, etc.), but prefix your path with win://

For example:

<?php
$dir_name = "Depósito";
mkdir('win://' . $dir_name );
?>


[ geenije @ 17.11.2014. 16:06 ] @
Ma ove neke metode što se spominju je kad kreiraš fajl pa dekodiraš/enkodiraš a ime fajla će u win exploreru izgledati onako šumuljigavo...

Ovaj extension što se spominje, taj link ka githubu je 404 a pitanje je i dal bi radio ovo što meni treba.

Ahhh čari programiranja šta to beše....ono kad te zakuca u samom startu da ne moš mrdnuti oko najobičnije trivijalnosti.
[ Jbyn4e @ 17.11.2014. 16:58 ] @
Pa to ti je, thanx to Windows TM :)
[ Nemanja Avramović @ 17.11.2014. 18:23 ] @
Pa da, ti možeš da pri čuvanju uradiš urlencode na imenu fajla i pri čitanju da ga pustiš kroz urldecode i to će da radi, ali ćeš i dalje imati nečitljive karaktere u Win exploreru
[ geenije @ 17.11.2014. 20:19 ] @
@Jbyn4e Da ali ovo ne radi ni na linuksu.

@nemanja aplikacija ni ne kreira fajlove već se oni koriste u SSH/Telnet aplikaciji SecureCRT (nešto nalik na sređeniji Putty), onda ova moja aplikacije te sesije tj .ini fajlove isčita i napravi svoju bazu konekcija u vidu jednog .ini fajla, znači da bi u toj aplikaciji SecureCRT imena sesija bili hijeroglifi što je neprihvatljivo.
[ bogdan.kecman @ 17.11.2014. 21:56 ] @
to na linuxu radi bez ikakvih problema, a radi i na solarisu sigurno, no nemam sad pri sebi solaris masinu da probam, mrzi me da kopam po smecu

Code:

[[email protected] k]# php --version
PHP 5.5.17 (cli) (built: Sep 20 2014 16:24:31)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies




[ geenije @ 17.11.2014. 22:10 ] @
Oki doki, sutra ću probati sa scandir i na solaris mašini pa javim rezultate, blagodarim
[ geenije @ 18.11.2014. 12:12 ] @
Nije do scandir, isto je i sa tom komandom. Nije ni do Windowsa jer na Veratovom hostingu isto ne radi.

Stvar je do podešavanja, e sad čega...PHPa, Apache, OSa...četvrto nema. Ali gde i šta to je pravo pitanje.

Tebi bogdane radi ne zbog linuksa već zbog nekog od ovih podešavanja. Ako možeš pošalji mi php.ini i httpd.conf, da počnem od toga
[ bogdan.kecman @ 18.11.2014. 12:34 ] @
nema veze sa apachetom posto ako pogledas radi i direktno iz cli-a,
dakle bez apacha.
tkodje nema veze ni sa php.ini, evo ti isto to sa -n (to znadi da ne
koristi php.ini fajl uopste)

Code:

[[email protected] k]# php -n kk.php
opeglani:

.
..
k.php
kk.php
ćčđšđš.đšž

[[email protected] k]# cat kk.php
<?php
  echo "opeglani:\n\n";
  $f = scandir("/var/www/html/k");
  foreach ($f as $ff){
    echo $ff."\n";
  }
?>

[[email protected] k]#



php.ini je na toj masini gde sam probao "defaultni" i kao sto rekoh nema
veze sa ovim ali ako ga zelis evo ti ga :D

Code:

[PHP]
engine = On
short_open_tag = On
asp_tags = Off
precision = 14
output_buffering = 4096
zlib.output_compression = Off
implicit_flush = Off
unserialize_callback_func serialize_precision = 17
disable_functions disable_classes zend.enable_gc = On
expose_php = On
max_execution_time = 30
max_input_time = 60
memory_limit = 128M
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE
display_errors = Off
display_startup_errors = Off
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = On
ignore_repeated_source = Off
report_memleaks = On
track_errors = Off
html_errors = On
variables_order = "GPCS"
request_order = "GP"
register_argc_argv = Off
auto_globals_jit = On
post_max_size = 8M
auto_prepend_file auto_append_file default_mimetype = "text/html"
doc_root user_dir enable_dl = Off
file_uploads = On
upload_max_filesize = 2M
max_file_uploads = 20
allow_url_fopen = On
allow_url_include = Off
default_socket_timeout = 60
[CLI Server]
cli_server.color = On
[Date]
date.timezone = Europe/Belgrade
[filter]
[iconv]
[intl]
[sqlite]
[sqlite3]
[Pcre]
[Pdo]
[Pdo_mysql]
pdo_mysql.cache_size = 2000
pdo_mysql.default_socket[Phar]
[mail function]
sendmail_path = /usr/sbin/sendmail -t -i
mail.add_x_header = On
[SQL]
sql.safe_mode = Off
[ODBC]
odbc.allow_persistent = On
odbc.check_persistent = On
odbc.max_persistent = -1
odbc.max_links = -1
odbc.defaultlrl = 4096
odbc.defaultbinmode = 1
[Interbase]
ibase.allow_persistent = 1
ibase.max_persistent = -1
ibase.max_links = -1
ibase.timestampformat = "%Y-%m-%d %H:%M:%S"
ibase.dateformat = "%Y-%m-%d"
ibase.timeformat = "%H:%M:%S"
[MySQL]
mysql.allow_local_infile = On
mysql.allow_persistent = On
mysql.cache_size = 2000
mysql.max_persistent = -1
mysql.max_links = -1
mysql.default_port mysql.default_socket mysql.default_host mysql.default_user mysql.default_password mysql.connect_timeout = 60
mysql.trace_mode = Off
[MySQLi]
mysqli.max_persistent = -1
mysqli.allow_persistent = On
mysqli.max_links = -1
mysqli.cache_size = 2000
mysqli.default_port = 3306
mysqli.default_socket mysqli.default_host mysqli.default_user mysqli.default_pw mysqli.reconnect = Off
[mysqlnd]
mysqlnd.collect_statistics = On
mysqlnd.collect_memory_statistics = Off
[OCI8]
[PostgreSQL]
pgsql.allow_persistent = On
pgsql.auto_reset_persistent = Off
pgsql.max_persistent = -1
pgsql.max_links = -1
pgsql.ignore_notice = 0
pgsql.log_notice = 0
[Sybase-CT]
sybct.allow_persistent = On
sybct.max_persistent = -1
sybct.max_links = -1
sybct.min_server_severity = 10
sybct.min_client_severity = 10
[bcmath]
bcmath.scale = 0
[browscap]
[Session]
session.save_handler = files
session.use_cookies = 1
session.use_only_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain session.cookie_httponly session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 1000
session.gc_maxlifetime = 1440
session.bug_compat_42 = Off
session.bug_compat_warn = Off
session.referer_check session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 0
session.hash_bits_per_character = 5
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form�keentry"
[MSSQL]
mssql.allow_persistent = On
mssql.max_persistent = -1
mssql.max_links = -1
mssql.min_error_severity = 10
mssql.min_message_severity = 10
mssql.compatability_mode = Off
mssql.secure_connection = Off
[Assertion]
[mbstring]
[gd]
[exif]
[Tidy]
tidy.clean_output = Off
[soap]
soap.wsdl_cache_enabled=1
soap.wsdl_cache_dir="/tmp"
soap.wsdl_cache_ttl�400
soap.wsdl_cache_limit = 5
[sysvshm]
[ldap]
ldap.max_links = -1
[mcrypt]
[dba]

[ bogdan.kecman @ 18.11.2014. 12:49 ] @
inace sad sam probao na dozi i ni na xp/7/8 php 5.5 i 5.6 ne cita ime fajla sa unicode karakterima kako valja
dal je bug u php-u ili u dozi abitno je, bice da ne radi ... na solarisu bi trebalo da radi no kao sto rekoh mrzi me da kopam sad po smecu da iskopam neki solaris
[ geenije @ 18.11.2014. 12:50 ] @
Ono jes, ne koristiš apache, a i ovaj php.ini nema ništa specifično....probao sam čisto eto sa njim, sa njim mi uopšte ne radi php, gubljenje vremena bi bilo da idemo dalje u razmatranje toga

Ako je do OS, probao sam sada tvoj kod na Verat hostingu, slovo Ž radi ali slovo Č ne radi, u mom kodu ne radi ni jedno
[ bogdan.kecman @ 18.11.2014. 13:00 ] @
ja imam ovde kod kuce 10tak linux masina i radi na svima normalno, imam
hostovano 50tak masina probao sam na 3 i radi na sve 3, nema potrebe sad
da probam na svima .. ne znam sta su oni radili na veratu da im to ne radi

ako radis iz shell-a uradi

EXPORT LANG=en_US.UTF-8
touch đšđšđčćčć.žđžp

edituj taj php fajl i pokreni ga u tom diru

onaj export samo obezbedi da ti je shell utf-8 da kada kreiras taj fajl
kreiras ga sa utf8 karakterima, takodje kada izvrsis u cli-u php da utf8
koji on izbaci bude vidljiv u shellu normalno
[ bogdan.kecman @ 18.11.2014. 13:11 ] @
Citat:
pišem aplikaciju koju ćemo koristiti na poslu i služi za telnet/ssh2 na rutere i da odradi niz komandi koje se često koriste

nego sto covece ovo u php-u? sto ne uze neki perl/python.. ili ako vec teras dozu onda ima ona onaj powershell ...
[ geenije @ 18.11.2014. 13:38 ] @
Ma nemam pojma, odavno nisam ništa programirao a onda skoro napravih neki sajt od nule, što se kaže u notepadu (HTML, CSS, PHP, MySQL), pa mi se rodila ideja da napravim još nešto korisno a koliko toliko sam se upoznao sa PHP pa mi se nije menjalo

Ne radim na hostingu iz shella, ne znam ni da li ima ta opcija, već ima samo CPanel onaj...
[ geenije @ 18.11.2014. 13:40 ] @
Eh da, ovako bih i centralizovao aplikaciju kao web aplikaciju, ne mora niko ništa da instalira na komp. I odgovara mi da imam inspiraciju da vežbam PHP, ostao sam bez ideja :)
[ geenije @ 18.11.2014. 14:48 ] @
Evo instalirah LAMP na Ubuntu i bogami šljaka sve....tako da će biti da je do operativnog sistema, jer podešavanja koječega nemaju poentu.

Sad još samo da iskopam SecureCRT aplikaciju za lindžu sa crackom...
[ bogdan.kecman @ 18.11.2014. 14:59 ] @
sta ce ti securecrt? imas ssh klijent na linuxu dzaba vec instaliran
koju to opciju securecrt-a koristis da ti treba bas on ?
[ geenije @ 18.11.2014. 15:25 ] @
Radim u državnoj firmi, tako da i ovo što radim već nailazi na iskrivljene poglede i reči tipa "šta će nam to", a želja mi je da iskoristim priliku da izvežbam PHP + Cisco kombinacije dok sam još ovde.
Tako da mi SecureCRT treba isključivo da stvari tj komande koje ne mogu da se predvide i automatizuju i zatreba ti ručno da radiš sa ruterima, radiš iz aplikacije iz koje radiš već 10 godina inače ništa od toga
Ako se i prebacim na neki drugi, otvaram nove problematike tipa usera, odakle da aplikacija povlači podatke o sesijama itd.

Već razmišljanjem o instaliranju svega na solaris izlazim debelo iz comfort zone a ljudi ovde to ne vole.
[ geenije @ 18.11.2014. 15:29 ] @
Evo sad novi problem, instalirah securecrt ali ga ne pokreće, mulja časovnik pola minute i to je to
[ geenije @ 18.11.2014. 16:08 ] @
Kad ga već tupimo, jel ima neka JavaScript ili nešto telnet/ssh konzola da se ubaci lepo u aplikaciju, može naravno i kao nova stranica da radi, vidim da imaju konzole ali ne baš i da mogu telnet ni ssh
[ geenije @ 18.11.2014. 16:56 ] @
Zipa sad rafo :D

Radi mi onaj tvoj kod sa scandir, ali ovaj moj stari koji na windowsu radi ovde ne radi, tacnije ne udje uopste u drugu foreach petlju, stavio sam tu echo "test" radi testa i tacno se to ne pojavi.

Meni treba da izvuce iz sadrzaja fajla odredjeni regexp, a ne samo imena fajla da izlista.

edit: file($filename) mi vraca prayan rezultat, a kad ehujem $filename to je regularno ime fajla sa celom putanjom


Evo koda

Code:

<?php
//setup php for working with Unicode data
mb_internal_encoding('UTF-8');
mb_http_output('UTF-8');
mb_http_input('UTF-8');
mb_language('uni');
mb_regex_encoding('UTF-8');
ob_start('mb_output_handler');
header('Content-Type: text/html; charset=utf-8');
setlocale(LC_ALL, '[email protected]', '[email protected]', '[email protected]');
// the following line prevents the browser from parsing this as HTML.
//header('Content-Type: text/plain; charset=utf-8');

$path_to_check = "/var/www/html/NOC/Sessions/";
$hostname = 'Hostname'; $protocol = '"Protocol Name"'; $current = ''; $file = 'sessions.ini';
$matchesHost[1]=$matchesIP[1]=$matchesProtocol[1]='';

foreach(glob($path_to_check.'*.ini') as $filename)
{ echo $filename;
  foreach(file($filename) as $fli=>$fl)
  { echo "test";
    if(mb_strpos($fl, $hostname, 0, 'UTF-8')!==false)
    {
        $result = $filename.' on line '.($fli+1).': '.$fl;
        echo $result; echo "<br />";
        preg_match("/Sessions\/(.*?)\b.ini\b/", $result, $matchesHost);
        preg_match("/Hostname\"=(.*?)$/", $result, $matchesIP);
        $matchesHost[1] = trim($matchesHost[1]); $matchesIP[1] = trim($matchesIP[1]);
        $current .= $matchesHost[1] . "##" . $matchesIP[1] ."\n";
        file_put_contents($file, $current);
    }
   if(mb_strpos($fl, $protocol)!==false)
    {
        $result = $filename.' on line '.($fli+1).': '.$fl;
        echo $result;echo "<br />";
        preg_match("/\"Protocol Name\"=(.*?)$/", $result, $matchesProtocol);  
        $matchesProtocol[1] = trim($matchesProtocol[1]);
        //$current = file_get_contents($file);
        $current .= $matchesProtocol[1] . "#";
        file_put_contents($file, $current);        
    }
  }
}


?>



[Ovu poruku je menjao geenije dana 18.11.2014. u 18:13 GMT+1]
[ bogdan.kecman @ 18.11.2014. 17:35 ] @
Code:

[[email protected] k]# php kk.php
opeglani:

/var/www/html/k/k.php
/var/www/html/k/kk.php
/var/www/html/k/ćčđšđš.đšž

[[email protected] k]# cat kk.php
<?php
  echo "opeglani:\n\n";
  $f = glob("/var/www/html/k/*");
  foreach ($f as $ff){
    echo $ff."\n";
  }
?>

[[email protected] k]#


dakle glob() radi

a radi i file()

Code:

[[email protected] k]# php kk.php
opeglani:

/var/www/html/k/kk.php
1> <?php
2>   echo "opeglani:\n\n";
3>   $f = glob("/var/www/html/k/*");
4>   foreach ($f as $ff){
5>     echo $ff."\n";
6>     if (is_file($ff)){
7>       $k = file($ff);
8>       $i = 0;
9>       foreach ($k as $kk){
10>         echo ++$i.'> '.$kk;
11>       }
12>     }
13>   }
14> ?>
/var/www/html/k/ćčđšđš.đšž
1> fldsf;ls
2> fl;dsjf;slk
3> ;lfksdjf;lkjsd
4> ;lkfjsd;lfkjds
5>
[[email protected] k]#



[ geenije @ 18.11.2014. 18:21 ] @
auuuuuuuuuuuuuuuuuuuuuuuh prijatelju sad me izjede sramota....zamor materijala šta li, tek u nekom trenutku kopiranja .ini fajlova sa mountovane njindonjs particije nisam postavio prava pristupa tj chmod koji su defaultno "ne moš ništa"...
[ geenije @ 18.11.2014. 18:23 ] @
sad ostaje da vidim zašto securecrt koji instaliram preko softnjare center i lepo ga instaliram neće da se pokrene...