Portál AbcLinuxu, 9. května 2025 19:36
Řešení dotazu:
Ahoj, nevím - nejsem si jistej, že to u CURLU nastavit lze, nic m=ně si můžeš výstup překódovat:
<?php
// cashuje prohlizec, tak bacha...
// header("Content-Type: text/html; charset=UTF-8");
$f = file_get_contents('mcast.sql');
// zjisteni kodovani
function detect($s)
{
if (preg_match('#[\x80-\x{1FF}\x{2000}-\x{3FFF}]#u', $s))
return 'UTF-8';
if (preg_match('#[\x7F-\x9F\xBC]#', $s))
return 'WINDOWS-1250';
return 'ISO-8859-2';
}
// automaticky prevod do UTF-8
function autoUTF($s)
{
// detect UTF-8
if (preg_match('#[\x80-\x{1FF}\x{2000}-\x{3FFF}]#u', $s))
return $s;
// detect WINDOWS-1250
if (preg_match('#[\x7F-\x9F\xBC]#', $s))
return iconv('WINDOWS-1250', 'UTF-8', $s);
// assume ISO-8859-2
return iconv('ISO-8859-2', 'UTF-8', $s);
}
print detect($f)."<br/>".autoUTF($f);
Autorem je Vrána
curl -c curlcookies.txt -d "loginName=A999&loginPass=1&loginLevel=B&command=1" http://74.219.212.106/cgi-bin/login.cgi
curl -b curlcookies.txt 'http://74.219.212.106/cgi-bin/report.cgi?command=0&elemployeename=&elemployeeid=&elperiod=2&dayFrom=0&dayTo=0&elemployeedept=-999&eltrigger=-1&format=1' > data.csv
zkoušel jsem pak v data převést kodovaní, ale nešlo to
iconv -f ISOblabla -t UTF-8 data.csv > ddata.csv
utf-8
, bo přihlásit se mi na to demo fčulnedaří.data.csv
nebo jeho část, ale ořezanou tak aby nedošlo ke změně sem položeného obsahu, myslím si, že se na ta data jen „špatně“ díváte.
#curl -c curlcookies.txt -d "loginName=A999&loginPass=1&loginLevel=B&command=1" http://74.219.212.106/cgi-bin/login.cgi
#curl -b curlcookies.txt 'http://74.219.212.106/cgi-bin/report.cgi?command=0&elemployeename=&elemployeeid=&elperiod=2&dayFrom=0&dayTo=0&elemployeedept=-999&eltrigger=-1&format=1'
, když to nechám normálně v stdout a nevypíšu to do souboru, tak už tam to zobrazuje tu diaktritiku divně.
:set encoding=utf-8
windows-1250
při exportu.iconv -f UTF-8 -t WINDOWS-1250 -o in.csv out.csv
echo -ne "\0273\0376" > muj.csv
curl -c ... page.cgi >> muj.csv
vim -e -s -c ':set bomb' -c ':wq' muj.csv
Rendijer chtěl pravděpodobně říct, že z příkazového řádku volá "curl URL ...", jen na to nějak zapoměl.Já jsem ho pochopil správně, o PHP nic nepsal.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.