|
Страници по тази тема: 1 | 2 | >> (покажи всички)
Тема
|
Re: Dopuskane do link
[re: brbrb]
|
|
Автор |
Yankoff (ъанкофф.) |
Публикувано | 11.06.03 09:46 |
|
Cookies sa za da proverish dali e validen usera. Kakto iskash taka go pravi, no ne sa zadaljitelni.
I oshte,servera mi ne dava vryzkite da izlizat izvyn cgi-bin direktoriqta,a samo da vlizat.ne znam kak da go opravq.
Ne ti razbiram vaprosa. Pitai sysadmina ili probvai
__________________________
| |
Тема
|
Re: Dopuskane do link
[re: Yankoff]
|
|
Автор | brbrb (Нерегистриран) |
Публикувано | 11.06.03 10:27 |
|
za servera imam v predvid,4e e na moito pc i cgi-tokoeto e vytre kato mu dam primerno "../movies/film.avi" i toi pishe NotFound,a pytq do tam e veren 100 pati go proverih.Drugoto koeto e: kak da kaja v scripta primerno:
} else {
prati zaqvka na download.cgi;
}
az tova ne mojah da razbera ,a tova : cgi-bin/download.cgi?id=1
se opitvam da go vzema po sledniq na4in:
use CGI;
$cgi = new CGI;
$file = $cgi->param('id'); oba4e neshto ne stava
pokazva mi slednoto v error_log:
[error] (2)No such file or directory: exec of /home/cgi-bin/download.cgi failed
[error] [client 217.*.*.*] Premature end of script headers: /home/cgi-bin/download.cgi
| |
Тема
|
Re: Dopuskane do link
[re: brbrb]
|
|
Автор |
Yankoff (ъанкофф.) |
Публикувано | 11.06.03 17:32 |
|
za servera imam v predvid,4e e na moito pc i cgi-tokoeto e vytre kato mu dam primerno "../movies/film.avi" i toi pishe NotFound,a pytq do tam e veren 100 pati go proverih.
polzvai pulen put: /home/blabla/movies/film.avi
Drugoto koeto e: kak da kaja v scripta primerno:
} else {
prati zaqvka na download.cgi;
}
az tova ne mojah da razbera
} else {
print "<meta http-equiv=\"refresh\" content=\"0;url=download.cgi?id=1\">";
}
a tova : cgi-bin/download.cgi?id=1
se opitvam da go vzema po sledniq na4in:
use CGI;
$cgi = new CGI;
$file = $cgi->param('id'); oba4e neshto ne stava
$file e raven na 1 v toq sluchai, posle kakvo pravish neznam
pokazva mi slednoto v error_log:
[error] (2)No such file or directory: exec of /home/cgi-bin/download.cgi failed
[error] [client 217.*.*.*] Premature end of script headers: /home/cgi-bin/download.cgi
Premature end of script headers obiknoveno oznachava, che nqma content-type zadaden i nemoje da izkara greshkata na ekrana
ako iskash da otvarqsh avi
print "Content-type: video/x-msvideo;\n\n";
ako iskash da vadi greshki :
print "Content-type: text/html;\n\n";
za da gi smeshish trqbva da si poigrasesh s if/else blokove, no ne mojesh da gi polzvash zaedno.
Imam predvid:
if (neshto){print "Content-type: text/html;\n\n"; print "greshka";}
else {"neshto"}
if (vsichko e ok)
{
print "Content-type: video/x-msvideo;\n\n";
open (FILE, "/home/......./film.avi")
.......
}
__________________________
| |
Тема
|
Re: Dopuskane do link
[re: Yankoff]
|
|
Автор | brbrb (Нерегистриран) |
Публикувано | 12.06.03 08:05 |
|
Zna4i za tova "1" ,koeto idva ot id=1 ,probvah po sldniq na4in kato izpolzvam tova,koeto si mi pokazal:
#!/user/bin/perl
use warnings;
use CGI;
$cgi = new CGI;
$file = $cgi->param('id');
if ($file == '1') {
print "Content-type: video/x-msvideo;\n\n";
$nl=$/;
undef $/;
open(FILE,"/home/user/movies/movieq.avi") || die $!;
binmode(FILE);
$content=<FILE>;
close(FILE);
$/=$nl;
print $content;
} else {
print "Content-type: text/html\n\n";
print "Failyt ne moje da byde nameren";
exit;
}
Sled kato ne iskashe da mi izkarva dori i else bloka,probvah prosto sys :
print "Content-type: text/html\n\n";
print "$file";
no ne mi otpe4ata daje i cifrata 1 .Nekade pravq nqkakva glupava i elementarna gresha,no oshte ne moga da se usetq kakva e.Wsyshnost scriptyt go bqh napravil malko po-slojen ot tova koeto sym pokazal tuk,toest usera se
identva predi da mu otvori stranicata s linkovete kym avi-tata.Tam za vsqko film4e ima link-screenshot i vseki link e s razli4no "id".Sled kato klikne na nqkoi cgi-to proverqva id-to i go prashta kym opredeleniq fail,no sled kato i taka neshto byrkam nqma smisyl da go pisha oshte po po-slojniq na4in za6toto hepten nqma da moga da si namerq greshkata .
Vse pak Yankoff mnogo ti blagodarq 4e se zanimavash s moite prostotii i nevejestvo i ako ne pishesh pove4e shte te razbera
| |
Тема
|
Re: Dopuskane do link
[re: brbrb]
|
|
Автор |
Yankoff (ъанкофф.) |
Публикувано | 12.06.03 10:44 |
|
Znachi koda ti si raboti.
1. Proveri si purvo dali apache-to ima prava v tazi dir kadeto ti e avi-to
2. Proveri si CPU-to dali ne e natovareno, poneje tozi proces e mnogo baven (chak sega zabelazah). Probvai s malko .avi
Dosega sam go polzval toq method za malki png-ta, kadeto ne se useshtashe da natovarva PC-to, no qvo nachina ne e dobur. Za edno .avi ot roda na 8MB mi se nalaga da chakam 2-3 min (celeron 1GHz, 256 SDRAM).
Ne se seshtam v momenta kak, no koda trqbva da se optimizira ili prenapishe po drug nachin.
Moje bi nqkoi drug ot foruma shte se namesi, che na mnogo hora bi im bilo polezno.
__________________________
| |
|
Zdrasti az sum brbrb i sq si regnah toq nick .
1.) Ta iskam da te pitam tova pone pravilno li e : if ($file == '1') , v smiyl s tozi operator "==" li trqbva da proverqvam 4isla i ako uslovieto e smeseno
($string == 4islo) koi operator se izpolzva : == ili eq
2.) Mashinata mi e slaba Cel 400,160 RAM, a avi-tata sa malki po 1 MB sa.
Кой ми показа кво е РС да го .....
| |
|
Table 2.2: Numeric and String Comparison Operators Comparison
Comparison Numeric String
Equal == eq
You may wonder why there are separate operators for numbers and strings, if numbers and strings are automatically converted back and forth. Consider the two values 7 and 30. If compared as numbers, 7 is obviously less than 30, but if compared as strings, the string "30" comes before the string "7" (because the ASCII value for 3 is less than the value for 7), and hence is less. Perl always requires you to specify the proper type of comparison, whether it be numeric or string.
Nadqvam se znaesh english :)
ili s dve dumi kazano eq se izpolzva za string sravneniq a == za chisleni
Preporachvam ti eq za povecheto neshta osven ako ne rabotish s ogromni masivi/bazi/struckturi/..., v koito znaesh tipa danni.
Povecheto hora biha me upreknali, no tozi vupros e dosta osporvan v nqkoi golemi chujdi forumi i vseki si ima stil na rabota.
btw
$foo = 42; #tova e integer
$foo = "42"; #tova e string
ima razlika (ne samo kavichkite:))
__________________________
| |
|
Da napylno te razbarh.V kraina smetka uspqh da napravq vsi4ko taka kakto iskah kato sa zarovih i malko u nas v knigite ama bez tvoita pomosht garanciq nqmashe da se spravq .Samo se polu4i edin malyk problem.
Zna4i napravih slednoto:select.cgi izkarva na ekrana stranica sas tri probni kartinki,koito slujat za linkove(kato predi tova usera e proveren za login i pass).Kato klickna na edin ot trite kartinki link-a izprashta kym download.cgi syotvetno id=1 ili id=2 ili 3.V tozi download.cgi s malko if-elsif-else obrabotvam i kazvam pri koe id koi fail da prashta kym browsera.Trite faila sa pic1.zip pic2.zip etc.Scripta mi dava prozoreca za download oba4e kato dam save ne mi pokazva faila kato pic1.zip a kato download.cgi .A vsyshnost tova si e pic1.zip zashtoto kato mu smenq razshirenieto na zip i go razarhiviram vsi4ko si e OK.Ne znam zashto taka stava.A drugoto koeto e,4e kogato slojih tozi red s META tag-a i kogato stranicata se refreshne browsera mi pokazva syobshtenieto ,koeto trqbva da se pokaje ako ne sym se lognal.Toest zarejda samiq script nanovo(koito iska pak da se logna) ,a ne predishnata stranica.
Кой ми показа кво е РС да го .....
| |
|
Scripta mi dava prozoreca za download oba4e kato dam save ne mi pokazva faila kato pic1.zip a kato download.cgi
zabravi togava print "content-type: ...";
napravi go taka:
use CGI;
$query = new CGI;
print $query->header(-type=>'application/octet-stream', -attachment=>'foo.gif');
Sloji na mqstoto na foo.gif kakto iskash da se kazva file-a kato se downloadva
A drugoto koeto e,4e kogato slojih tozi red s META tag-a i kogato stranicata se refreshne browsera mi pokazva syobshtenieto ,koeto trqbva da se pokaje ako ne sym se lognal.Toest zarejda samiq script nanovo(koito iska pak da se logna) ,a ne predishnata stranica.
nerazbiram mnogo dobre, no mai imash nqkade logicheska greshka
__________________________
| |
|
Страници по тази тема: 1 | 2 | >> (покажи всички)
|
|
|