mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.perl
Titolo: DBI

Salve, volevo modificare un programma che usa il modulo mysql con un ciclo
del tipo:
foreach my $a (@a) {
         my $qq="select ... where id='$a'";
         my $rr=$db->query($qq);
          ...
}
usando il modulo DBI e cercando di minimizzare il numero di query.
Ho visto che e' possibile usare:
my $sql=qq{SELECT id, login, nome, cognome FROM persone WHERE id=?};
my $sth=$dbh->prepare($sql);
foreach my $a (@a) {
	$sth->bind_param(1, $a,);
	$sth->execute();
	my($id, $login, $nome, $cognome);
	$sth->bind_columns(\$id, \$login, \$nome, \$cognome);
	while ($sth->fetch() ) {
                ....
	}
}
che dovrebbe risparmiare tempo, quello che pero' mi sfugge e' come posso
accorgermi che la query per qualche $a non ha dato risultato.
Mi verrebbe da pensare di mettere tutti i risultati in un hash e poi fare un
nuovo ciclo foreach evidenziando quelli che non vengono trovati, ma credo
sia uno spreco di memoria e di righe di codice... non c'è una maniera più
furba?
Grazie.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 furba?
Eccoti un metodo:
         my $ricevuto = 0;                # <------------
	while ($sth->fetch() ) {
                 ....
             $ricevuto = 1;               # <------------
	}
         # QUESTO E" IL CONTROLLO         # <------------
         unless ($ricevuto) {
             # fai qualcosa.
             # La query non ha restituito record.
         }
P.S. $a e' una variabile globale che viene usata per il sort.
      Non usarla *MAI*.
      Finche' tutto va bene, nessuno se ne accorge. Quando hai un bug
      nell'ordinamento di un array, trovare il responsabile puo'
      diventare problematico.
Ciao
gmax
-- 
   ____ ____  _____ _   _
  / _  |    \(____ ( \ / )
( (_| | | | / ___ |) X (
  \___ |_|_|_\_____(_/ \_)
(_____|
Sapere, saper fare, fare, far sapere
http://gmax.oltrelinux.com
v

> Ciao
Grazie per la risposta e il consiglio.
Un'ulteriore cosa, forse più teorica che pratica.
Avendo una stessa query in un ciclo for (in cui cambia solo la clausola
WHERE), non sarebbe conveniente fare un'unica query che comprende tutti i
valori ad es:
my $stringa=join('\' OR id=\'', @dati);
my $sql=qq{SELECT id, nome, cognome FROM studenti WHERE id='$stringa'};
my $sth=$dbh->prepare($sql);
$sth->execute();
my %hash_ref;
my %risultati;
while (my $hash_ref=$sth->fetchrow_hashref) {
           $risultati{$hash_ref->{id}}="$hash_ref->{nome}".','."$hash_ref->{cognome}";
}
foreach $dati (@dati) {
           my $valori=$risultati{gisa};
           ....
}
con una cosa del genere si può risparmiare a sufficienza (tempo a scapito di
memoria immagino) oppure non ne vale la pena? (ovviamente c'e' da inserire
sempre una chiave unica).
Ciao


 
Certo. Ma questa soluzione, benche' piu' efficiente, non e' equivalente 
a quella originale. In particolare, non ti consente di dire quale valore 
non ha prodotto risultati. Se questo aspetto non e' importante, allora 
la soluzione a query unica e' preferibile. (Ma fai attenzione a non 
eccedere la dimensione massima della query accettata dal DBMS).

Newsgroup: it.comp.lang.perl
Titolo: Perl e Mac (newbie)

Ciao a tutti.
Premetto che non ho mai programmato in vita mia. Oggi ho deciso di
dedicarmi al Perl e cosi ho letto le faq del newsgroup, i vecchi post e
mi pare di aver capito che i testi fondamentali sono: Learning Perl,
Programming Perl e CGI Programming With Perl (da leggere in
quest'ordine). La mia domanda e' questa: cosa mi serve per lavorare con
il Perl su piattaforma Macintosh?
Grazie in anticipo a coloro che mi vorranno rispondere.
-- 
Alessandro Melandri
Togli nospam dall'indirizzo per rispondere.

 ha scritto nel messaggio
news:1ep3am2.1vahbn810ngwjgN%pezzett...@libero.it...


 wrote in message
1ep3am2.1vahbn810ngwjgN%pezzett...@libero.it...


 già linguaggi di programmazione di tipo server?
Per farci cosa? Lui vuole imparare a programmare in Perl, mica fare un
cd multimediale col dhtml ;-PPPPPPP
Wiz of Id

 wrote in message
3A9240EC...@galactica.it...


Newsgroup: it.comp.lang.perl
Titolo: AIutoooooooooooooooooo

Ciao a tutti sto uscendo pazzo con uno script che non riesco a far
girare.
Chi mi da una mano?
#! /usr/bin/perl
sub indice {
   my $pos = 0;
   my @positions;
   while( -1 != ( $pos = index $_[0], $_[1], $pos ) )
    {   push @positions, $pos++;
    }
    return \@positions;
 }
print "Scrivi la sequenza";
my $str = <STDIN>;
print "ora indica la snp da trovare";
$snp= <STDIN>;
print join( '-', @{ indice( $str, $snp) } ), "\n";
Il prob è all'ultimo rigo. Se al posto di $snp immetto una stringa da
cercare ok ma se inserisco una STDIN come vorrei fare mi da solo
l'ultimo valore
che mi sono perso?
Grazie

l'ultimo valore
No, il problema č che non elimini il "\n" dall'input, quindi trovi la
sottostringa che lo contiene, cioč quella alla fine di $str.
Č anche probabile che ci siano modi piů efficienti per calcolare tutte
gli indici della sottostringa, ma in questo momento non mi viene in
mente nulla.
Ciao.

 Ciao.
GRazie tutto ok
Newsgroup: it.comp.lang.perl
Titolo: Hash

Chiedo aiuto per inserire dei valori in un hash.
Ossia fatta una query del tipo
select campo1,campo2
from tavola....
devo recuperare i recordset (2 soli campi) e inserirli in un hash
in modo da avere campo1 chiave e campo2 valore.
Soluzioni??

 Soluzioni??
perldoc DBI, cerca 'fetchrow_hashref'. 
Max
'

perldoc DBI, cerca 'fetchrow_hashref'. 
A parte che non c'è nulla nella richiesta dell'OP che faccia supporre che
stia usando DBI (sicché, sarà anche così, ma qualche perplessità è pur
lecita), questo metodo restituisce un reference ad un hash che ha come
chiavi i NOMI dei campi e per valori i contenuti; lui invece vuole, se ho
ben capito, che il CONTENUTO del campo1 sia la chiave e il CONTENUTO del
campo2 il valore.
Io non conosco altro sistema che la costruzione esplicita dell'hash,
attraverso un ciclo su tutte le righe del recordset. Parlando sempre di DBI
(e sperando di prenderci):
   $sth = $dbh->prepare("SELECT campo1, campo2 FROM table");
   $sth->execute();
   while (@ary = $sth->fetchrow_array)
	$hash{$ary[0]} = $ary[1];
   }
L'unicità delle chiavi dovrebbe ovviamente essere garantita a priori in
base a criteri esterni.
Ciao.

 campo2 il valore.
E' vero. Chiedo scusa, dovevo leggere piů attentamente.
Max
Newsgroup: it.comp.lang.perl
Titolo: Espressioni regolari....

Ho ancora poca dimestichezza su PERL... sto leggendo il libro di Larry
Wall.
Mi trovo ad uno scoglio... ho fatto un programma per la contabilitŕ
della mia azienda, e questo comprede una ricerca in un file di
database dove deve trovarmi dei numeri che si trovano all'inizio di
una riga... Ma eseguendo questo script:
<ORE> =~ /^\d+/gm;
print STDOUT $&;
cerca e trova soltanto il numero decimale che č nella prima riga,
senza cercare anche nella seconda, terza, ecc.....

 senza cercare anche nella seconda, terza, ecc.....
Il resto del codice ?
<ORE> mi sa che prende solo la prima riga.
prova a fare
while (<ORE>) {
  $_ =~ /^\d+/gm;
  print STDOUT $&;
  }
e vedi che succede ...
 Raffaello

senza cercare anche nella seconda, terza, ecc.....
A differenza di Awk, sed ed altri linguaggi per l'elaborazione di testi,
perl fa solo ed esclusivamente quello che gli dici di fare: NON è implicito
un ciclo di input su stdin[1].
L'espressione <ORE>, in un contesto scalare, implica una ed una sola
lettura: appunto, la prima "riga" (o, meglio, il primo record). Il
modificatore /m NON forza la lettura di altre righe[2]. In breve, per
continuare a leggere da ORE, devi continuare a leggere da ORE, inserendo,
come ti è già stato detto, la lettura in un ciclo:
   while (<ORE>) {
    ....
   }
Ciao.
[1] Potresti ottenere che si comporti così, eseguendo perl con l'opzione -n.
Il tuo script però non funzionerebbe comunque, perché non legge da stdin, ma
da un input presumibilmente aperto altrove. Dovresti scrivere qualcosa del
genere:
     print $& if (/^\d+/gm);
A questo punto, questo script, eseguito con perl -n sul file da processare,
fa quello che probabilmente ti aspetti. Il tutto però è giustificato forse
solo per un programma da eseguire in una sola linea di comando:
    perl -ne 'print $& if (/^\d+/gm)' file.txt
[2] E` bensì possibile leggere un intero file in una volta sola, valutando,
per esempio, l'espressione <ORE> in un contesto array:
    @righe = <ORE>;
L'espressione regolare di per sé, però, non costituisce un contesto array.
Newsgroup: it.comp.lang.perl
Titolo: Server

Salve
Sapete se esiste qualche server (non a pagamento) che mette a disposizione
la possibilità di usare script, e quindi la directory CGI-BIN??
Grazie

 cerchero' un'altra donna dentro ai sogni di Tarzan...

 Grazie
-- 
ASTAT - Istituto provinciale di statistica
viale Duca D'Aosta, 59
I - 39100 Bolzano
tel: 0471/994045  fax: 0471/994008
http://www.provinz.bz.it/astat

Newsgroup: it.comp.lang.perl
Titolo: costruzione pagine da cgi


\n";  (RIGA IN QUESTIONE)
L'errore che mi viene visualizzato richiamando il file nomedelfile.cgi è:
Forbidden
You don't have permission to access /cgi-lib/nomedelfile.cgi on this server.
Ho veramente bisogno di aiuto.
Se riuscite a rispondermi anche in email oltre che qui vi sarei verametne
grato.
Francesco
cabig...@yahoo.com
cabig...@archimedia.it

 cerchero` un'altra donna dentro ai sogni di Tarzan...




Newsgroup: it.comp.lang.perl
Titolo: Hosting CGI/Perl gratuito

Salve,
qualcuno può consigliarmi un hosting gratuito possibilmente italiano dove
poter provare i CGI/perl liberamente?
Grazie
Max



Dai una occhiata qui:
http://www.clickherefree.com/Free_Web_Space_Directory.shtml

Grazie mille per il link davvero interessante. Ma davvero Xoom.it permette
l'uso di CGI (nonché di Java! :-|) gratuitamente? Sul sito non mi risulta!
Bye
Max

Mi sa che la risorsa non è aggiornatissima... cmq qualcosa c'é.
Ciao, Enrico


Newsgroup: it.comp.lang.perl
Titolo: my $up = pack('u', $FRM{'pw_rq'});

Qualcuno mi spiega questa stringa??
my $up = pack('u', $FRM{'pw_rq'});
--
Ciao
FAIEL
www.fulleffect.it
 -Il portale italiano del writing-

 
Che cos'è che non capisci? Forse non sai a cosa serve pack()? Hai dato
uno sguado al manuale?
 perldoc -f pack
 Takes an array or list of values and packs it into a binary structure,
 returning the string containing the structure.  The TEMPLATE is a
 sequence of characters that give the order and type of values, as
 follows:
 [...]
  u   A uuencoded string.     
Max

 ha scritto nel messaggio
news:Pine.LNX.4.10.101090...@c64.comm2000.it...


Esiste la funzione inversa di pack() ???
unpack()
	Michele.
-- 
Michele Beltrame
m...@io.com
http://www.io.com/~mick/
ICQ# 76660101
==> Sito di it.comp.lang.perl: 
http://www.perl-it.org
==> Sei del triveneto e vuoi unirti ai Perl Mongers? Scrivimi!
Newsgroup: it.comp.lang.perl
Titolo: mi traducete questo script da php a perl?

cdo, grazie
$a="
347XX...@sms.vodafone.it
";
$oggetto="oggetto";
$messaggio="messaggio";
$intestazioni= "From: 
enrico...@tiscalinet.it
\r\n";
$intestazioni .= "Reply-To: 
enrico....@tiscalinet.it
\r\n";
$intestazioni .= "Return-Path: 
enrico...@tiscalinet.it
\r\n";
$intestazioni .= "MIME-Version: 1.0\r\n";
$intestazioni .= "X-Mailer: PHP/".phpversion();
mail($a, $oggetto, $messaggio, $intestazioni);

 mail($a, $oggetto, $messaggio, $intestazioni);
l'unica istruzione da tradurre è phpversion()
Perl fornisce l'informazione sulla versione corrente con $]
il resto è uguale sia in Perl che in PHP tenendo conto che
mail(......) si riferisce ad una routine e che per tradurla è
necessario osservarla.
Perl dispone di diversi moduli che permettono l'invio di posta
elettronica.

 l'unica istruzione da tradurre è phpversion()
Bisognerebbe anche fare l'escape dei vari '@', che dentro le vergolette
doppie denotano array, in virtù dei meccanismi di interpolazione.
Max


Enrico
Newsgroup: it.comp.lang.perl
Titolo: Mod Perl e Vari proxy (squid, nginx, mod_proxy).

Sto cercando di capire, tra i vari proxy opensource disponibili sul mercato,
quale dei 3 sia il migliore per essere messo come frontend davanti a diversi
server web con mod_perl. Ho letto questo articolo:
http://perl.apache.org/docs/1.0/guide/strategy.html
Effettivamente, da alcuni test effettuati, la presenza di un proxy
davanti ad
un mod_perl fa sentire i suoi effetti. Per fare i test ho messo un semplice
cgi che spara a video una riga, e tramite delle wget contemporanee, con
limit-rate settato, prendevo il contenuto. Con un proxy davanti e' davvero
tutta un'altra cosa. Pero', non so chi scegliere tra nginx o mod_proxy. Il
primo mi sembra molto potente e configurabile al massimo,ma ho avuto
delle serie difficolta' con la documentazione, spesso i forum in cui si
parla
del suo utilizzo con mod_perl sono in russo, e nno capisco niente.
il mod_proxy e' chiaramente piu' conosciuto e forse anche piu' usato(ma
quest'ultimo motivo, si sa, non sempre significa che un prodotto e' di
qualita''). Qualcuno di voi ha avuto esperienza in merito?
Stavo pensando di provare anche squid, anche se ha delle limitazioni (tra
tutte e' HTTP1.0 e basta).
Saluti.
-- 
Posted via a free Usenet account from 
http://www.teranews.com

 Pero', non so chi scegliere tra nginx o mod_proxy.
Dai uno sguardo anche a Varnish (
http://varnish.projects.linpro.no/
).
Max

Dharma wrote:

Come reverse-proxy direi che mod_proxy è senz'altro più indicato di squid.
nginx non lo conosco per niente, e neanch'io conosco il russo.
Se vuoi testare altro, ci sarebbe anche Perlbal:
http://danga.com/perlbal/
che ha il vantaggio di essere scritto in Perl (e C) e fa anche da 
load-balancer.
Non l'ho mai usato, ma se è usato da LiveJournal e Vox (per chi non lo 
sapesse entrambi scritti in Perl - il secondo con Catalyst) e TypePad, 
direi che ci si può fidare.
Ciao,
Emanuele.

Hi,
Excuse me if I am wrong, but If I understand you correctly, you are
looking for a reverse proxy with Perl support. I would like to suggest
SafeSquid, which supports Perl compatible regex 
http://www.safesquid.com/
. If you would like to try it, you can download the free version from
http://downloads.safesquid.net/free/safesquid-4.1.1-com20-free.tar.gz
Register on the forum at 
http://www.safesquid.com/forum
 and use the ID
to access the downloads link.
Regards.

 looking for a reverse proxy with Perl support. 
No :) I'm looking for a reverse proxy that works fine with mod_perl :)
I don't need support for perl.

Newsgroup: it.comp.lang.perl
Titolo: Programma "filtro": come distinguere l'input rediretto?

 imap <F11> <C-L>:set tw=70<CR> {!}
script_filtro.pl
 <CR><Esc>
  dal che ho dedotto che vim  probabilmente passa a `par' una porzione
di file rediretto, cioe` una cosa tipo:
  «
script_filtro.pl
 <file.input >file.output»
  Mi sbaglio?
  Se la mia  analisi e` corretta, questa e` la  domanda: come fare per
poter distinguere se l'input proviene da  una redirezione o da un nome
di file specifico?
  Questo  e` l'inizio  dello  script,  con tutto  quel  che serve  per
capirne il funzionamento:
======================================================================
#!/usr/bin/perl
use strict;
# Main
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  $ARGV[0] || die "\n*** Specificare il nome del file.\n\n";
  my $txt = TxtGet( $ARGV[0] );   # legge il file di testo
# Sostanzialmente,  credo che  il  problema stia  qua:  come fare  per
# testare  se,  non avendo  l'$ARGV[0]  (cioe`  il  nome del  file  da
# leggere) esiste pero` un input rediretto?
  $txt = TxtTitles( $txt );       # elaborazioni varie...
  $txt = TxtFilterChars( $txt );
  $txt = TxtSyntax( $txt );
  $txt = TxtFormat( $txt );
  print STDOUT $txt;              # stampa il risultato sullo stdout
exit( 0 );
#_____________________________________________________________________
# $txt = TxtGet( $file )
#   Legge un testo e lo memorizza nella variabile $txt
#   - Riceve  : $file (testo da leggere)
#   - Ritorna : $txt  (il testo letto)
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sub TxtGet
{
  my $file = shift;
  my $txt = "";
  open( IN, "< $file" ) || die "\n*** TxtGet: $file inesistente.\n\n";
    $txt = do { local $/; <IN> };
  close( IN );
  return( $txt );
}
======================================================================
  Spero di essere stato piu` chiaro.
 
  Ringrazio in anticipo chiunque mi riesca a dare una mano... ;)
-- 
Cio` che ho scritto, ho scritto.

  close( IN );
Togli open e close, e cambia:
    $txt = do { local $/; <> };
Se scrivi:
 
script_filtro.pl
 file.input >file.output»
apre automaticamente file.input come standard input, altrimenti legge da
STDIN.
Ometto ogni commento sul resto del codice.
Ciao.

 legge da STDIN.
  Si`, funzia. Pero` mi ritrovo un output diverso. Ci lavorero` sopra.
Grazie per la «dritta»... e la pazienza... ;)

Newsgroup: it.comp.lang.perl
Titolo: utilizzare i Socket per controllare gli Url...

Sto cercando di creare un programma che controlli una lista di url
collegandosi direttamente utilizzando i socket per vedere se il sito c'è o è
off-line, una specie di robot insomma tipo quelli che usano i motori di
ricerca per indicizzare i siti. Ho decine di libri sul perl che trattano
l'argomento socket ma gli esempi,o non ci sono o non funzionano. chi mi sà
dare una mano ?



Hai qualche motivo particolare per non usare gli strumenti messi a
disposizione dalla LWP?
 
http://search.cpan.org/search?dist=libwww-perl
 perldoc LWP
Max

 ha scritto nel messaggio
news:Pine.LNX.4.10.101120...@c64.comm2000.it...


 collegandosi direttamente utilizzando i socket per vedere se il sito c'č o
puoi fare una richiesta HEAD e vedere cosa ritorna il web server:
use IO::Socket::INET;
my $timeout = 15;
my $host = "
www.yahoo.it
";
my $uri = "/index.html";
my $status;
eval {
        local $SIG{ALRM} = sub { die "timeout\n" };
        alarm $timeout;
        my $sock = IO::Socket::INET($host) || die "unable to connect\n";
        print $sock "HEAD $uri HTTP/1.1\n";
        print $sock "Host: $host\n";
        print $sock "\n";
        $response = <$sock>;
        $response =~ m{^HTTP/1\.1 (\d+)} || die "invalid response";
        $status = $1;
}
if ($@) {
        print "error: $@\n";
} else {
        print "status: $status\n";
}
lo status dovrebbe essere 302 (found) o 404 (not found)
-- 
/federico

 ha scritto nel messaggio
news:pdt1v9....@federico.milano.yahoo.com...


 attrezzato a fare ciò ?
che errore ti da?
-- 
/federico

 ha scritto nel messaggio
news:oij4v9....@federico.milano.yahoo.com...


 Execution of 
socket.pl
 aborted due to compilation errors.
ops, si ci va }; alla chiusira di eval, dimenticato il ;
-- 
/federico

 ha scritto nel messaggio
news:ml47v9....@federico.milano.yahoo.com...

Newsgroup: it.comp.lang.perl
Titolo: Net::news

Ho bisogno di questo modulo ma non riesco ad individuarlo in CPAN. Ho
cercato sia in Net:: che in News::
Sapete qual'e' il nome o l'autore?
---------------------------------------------------------
cnisi+...@usa.net
 (To reply via e-mail remove +nospam)
---------------------------------------------------------

cnisi+...@usa.net
 wrote:
 >Ho bisogno di questo modulo ma non riesco ad individuarlo in CPAN. Ho
 >cercato sia in Net:: che in News::
Non ti riferisci a Net::NNTP? Se e` questo sta il libnet.
-- 
ciao, | [Per rispondere togli "toglimi" dal mio indirizzo.]
Marco | * The Internet is full. Go away.  -- Joel Furr *

 wrote:
: Ho bisogno di questo modulo ma non riesco ad individuarlo in CPAN. Ho
: cercato sia in Net:: che in News::
: Sapete qual'e' il nome o l'autore?
Ti ha gia` risposto Marco.
Volevo solo darti un consiglio (pubblicita` progresso?-): prova ad usare
il modulo CPAN che e` nella distribuzione ufficiale del Perl. Basta
fare:
perl -MCPAN -e shell
e ti trovi in una shell in cui puoi fare ricerche sui moduli (ad
esempio "m /News/"), prelevarli, installarli, aggiornarli, ecc.
In piu`, ti vengono salvate le info sui moduli in una directory,
~/.cpan/sources/modules cosi` le puoi consultare anche quando sei
off-line.
-- 
Nando Santagata: Telemastica & infornatica
Key fingerprint = C2 D9 C0 8E D5 B7 04 97  AF E8 3F 3E AF 4E 7F 9E
finger nando (at) ns (dot) ipers (dot) net   for my PGP public key
Home: 
http://www.ipers.net/~nandos

...
:perl -MCPAN -e shell
a me non funzia. (FreeBSD)

...
: :perl -MCPAN -e shell
: a me non funzia. (FreeBSD)
Nel senso che ti dice che non ha il modulo (allora hai un Perl
antidiluviano) o che ti da` errori (allora non l'hai configurato con
i server da contattare)?


...
:: :perl -MCPAN -e shell
:: a me non funzia. (FreeBSD)
:Nel senso che ti dice che non ha il modulo (allora hai un Perl
:antidiluviano) o che ti da` errori (allora non l'hai configurato con
:i server da contattare)?
la seconda che hai detto..
ora sto passando a linux da freeBSD e mi sono un poco perso nella
configurazione della scheda di rete, quindi e' come se avessi risolto il
problema :(

 wrote:
: :: :perl -MCPAN -e shell
: :: a me non funzia. (FreeBSD)
: :Nel senso che ti dice che non ha il modulo (allora hai un Perl
: :antidiluviano) o che ti da` errori (allora non l'hai configurato con
: :i server da contattare)?
: la seconda che hai detto..
perl -MCPAN::FirstTime -e 'CPAN::FirstTime::init()'


Newsgroup: it.comp.lang.perl
Titolo: caratteri ricevuti errati da METHOD=POST ACTION=" "

per esempio se nel form inserisco: "אטע" ritornano caratteri diversi..
cosa posso fare?
Grazie



ma usi la CGI.pm per leggerli?

 ha scritto nel messaggio
news:B887CE19.C25B%kryn...@katamail.com...

Newsgroup: it.comp.lang.perl
Titolo: problema newbie con ciclo if

se la sitntassi č:
if (condizione){
istruzione\i
}
per se io metto
if ($op=="cane"){
.....
}
if ($op=="gatto"){
....
}
li esegue tutti e due

 cerchero' un'altra donna dentro ai sogni di Tarzan...

 wrote:
:)if ($op=="cane"){
l'operatore di uguaglianza, per le stringhe, e' eq
if ($op eq "cane")
Oha
"Ci sono tre tipi di persone al mondo: quelle che sanno contare, 
e quelle che non ne sono capaci."

 
perldoc perlop|perl -ne'print if$r&&!undef$r||/[e=][=q]..r/&&++$r'
Max

 wrote:
" Considererei inoltre l'uso di elseif.
elsif :-)
(io ci casco spesso...)
ciao, .mau.

(io ci casco spesso...)
A chi lo dici :-\
Poi, sempre preso tra Perl, AppleScript, Lingo e JavaScript...
cominciano a incrociarmisi le sintassi - che e' peggio dei flussi di
Ghostbusters ;o)

Newsgroup: it.comp.lang.perl
Titolo: Sostituzione

Ciao,
come è possibile in una stringa sostituire tutti i caratteri speciali 
visualizzati come \xhh (dove hh è il valore esadecimale) con un valore 
vuoto?
Grazie
Simone 

Non so se ho capito ma tu hai una stringa dove ci sono diversi "\xhh"
con gli hh sono diversi e li vuoi sostituire con nulla? Giusto?
Se così è dovrebbe bastare (anche se non lo sto testando) una cosa
del genere:
<pre>
$stringa=~s/\\x..//g;
</pre>
Spero di aver risposto alla tua domanda anche se non sono sicuro al
100% perchè non l'ho testato :-)

Non Funziona... avevo già provato una cosa simile...
Qualche altra idea?


Qualche altra idea?
Qualche altra informazione?
Che cosa sarebbero i "caratteri speciali"? "visualizzati" da chi? dove?
Possibile è probabilmente possibile con l'operatore di translitterazione
(y///) o alla peggio con quello di sostituzione (s///), ma prima
bisognerebbe capire bene che cosa dovrebbe essere translitterato o
sostituito.
Ciao.

I caratteri speciali intendo quei caratteri non visualizzabili a video 
quindi sulla stringa identificati con \xhh dove hh è un numero esadecimale
se tu scrivi
my $test = "\xc6";
print $test;
ti viene fuori un carattere starno, io devo all'internodi questa stringa 
levare tutti i caratteri che sono messi in questo formato
se provi a fare
$test =~ s/\xc6//g;
funziona... ma io voglio levarli tutti in automatco
mi sono spiegato?


levare tutti i caratteri che sono messi in questo formato
Il problema è che "in quel formato" puoi rappresentare qualunque carattere,
sicché si ripone la domanda: quali sono i caratteri "non visualizzabili"?
(E, per inciso, "all'interno della stringa", i caratteri NON sono
rappresentati in quel formato.)
Una volta era semplice (ma neppur tanto, perché c'erano i codepage): i
caratteri ASCII non stampabili erano tutti e soli quelli da \x00 a \x1F,
gli altri avevano tutti una qualche rappresentazione (eventualmente come
caratteri semigrafici, e chissà se questi li avresti considerati "strani").
Oggi come oggi, la situazione è più complessa e non c'è una risposta
semplice (per la verità, non c'è la domanda semplice). Tanto per dirne una,
il carattere \xc6, in latin1, non è particolarmente "strano": è un "LATIN
CAPITAL LETTER AE", una bella lettera perfettamente stampabile e legittima
in qualche lingua che usa latin1 (Svedese?).
Se proprio non vuoi specificare di quali caratteri stai parlando, puoi
tentare di usare \w, \s, ecc. o le classi Posix alpha, alnum, cntrl, ecc.
Qualcosa del genere: s/[^\w\s]//g. O forse s/[[:cntrl:]//g, o chissà che
altro, secondo quali caratteri ritieni "strani".
Ciao.
Newsgroup: it.comp.lang.perl
Titolo: mi(s)tico perl

Ciao,
Qualcuno puo' spiegarmi chome viene gestita questa operazione? che valore
ottiene x?
    $x =  $a && $array1{$b} && $array2{$c}
Grazie,
Giuliano
-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com
 - The #1 Newsgroup Service in the World!
-----==  Over 80,000 Newsgroups - 16 Different Servers! =-----

     $x =  $a && $array1{$b} && $array2{$c}
Non mi sembra cosi' complicato.... a parole direi che $x contiene il
valore di $array2{$c} se sia $a che $array1{$b} che $array2{$c} sono
veri, oppure il "primo" dei valori di $a, $array1{$b} e $array2{$c} che
sia falso.
Ovviamente i termini vero e falso vanno considerati "in perl".
-- 
Saluti,
Giancarlo

Newsgroup: it.comp.lang.perl
Titolo: REGULAR EXPR. - help

A un analfabeta di perl qualcuno sa indicare come identificare con una
regular expression un gruppo di file che inizia con la cifra 1?
Potrebbe essere qualcosa del tipo
1.
corrispondente a
1*
di DOS, Unix ecc?
	Grazie per l'aiuto
				A. Salarelli

 regular expression un gruppo di file che inizia con la cifra 1?
per matchare una stringa che inizia con '1' usi /^1/
-- 
/federico

Newsgroup: it.comp.lang.perl
Titolo: come scrivere un form in perl?

Vorrei scivere form in perl.
Datemi un consiglio su quali librerie usare?
Come usarle?
Dove trovare esempi?
Grazie in anticipo, Mario.
Newsgroup: it.comp.lang.perl
Titolo: i perchè di un principiante

Ho provato a creare la mia prima CGI, forse pretendevo troppo . . . 
ho Windows95 con Active State 5.500 e il pm per le CGI, per migliorare
Tiny Web Server, che almeno lui fa quello che dovrebbe.
La mia prima CGI Più semplice di così non sono riuscito a crearla per
provare.
Se la provo ad aprire con I.E. 3.02 non dà alcun segno di risposta
invece con Netscape mi dà come risposta l'intero codice, se il Server
è spento tramite il Server mi dice che il file (prima.cgi returned
nothing) cioè mi visualizza nel browser il codice della CGI.
#! ../../perl/perl.exe
print <<"END";                     print "Content-type: text/html\n\n;
HTTP/1.0 200 OK              print <<'ending_print_tag';
Content-type: text/html
<html>
<head>
<title>La mia prima CGI</title>
<background="#000000" text="FF0000">
</head>
<body>
<h1>La mia prima CGI</h1>
<hr noshade>
<em>e potrai guardare il Cyberspazio con occhi diversi ;-))</em>
</body>
</html>
END       ending_print_tag
Quelle che sono scritte affianco a print e ad END non sono delle
ripetizioni nel codice, ma due modi diversi in cui ho provato. Perl
non da alcun errore scrivendo (perl prima.cgi), anche lui dà come
risposta il codice meno la prima riga.
Un dubbio che mi sorge ma nel MIME non dovrebbe esserci
un'associazione a ( .cgi ).
Le mie perplessità non finiscono quì ogni volta che tento di
installare dalla rete qualche paccetto .pm mi dice che non riesce a
trovare il file PPD, questo file dovrebbe essere sul mio HD. L'unico
pacchetto che sembra essere andato a buon fine e quello CGI perchè
lanciando 
ppm.pl
 e facendo la verifica dei pacchetti installati mi
risponde CGI.

un'associazione a ( .cgi ).
Sennza l'associazione sicuramente non funzionano. Devi fare in
modo che il server li interpreti come CGI e quindi li esegue
(utilizzando il Perl pero`, quindi anche a livello di
sistema operativo devi, come detto sopra, associare).
	Michele.
-- 
Michele Beltrame
mi...@io.com
http://www.italpro.com/mb/



di...@tin.it
 wrote:
 >print <<"END";                     print "Content-type: text/html\n\n;
 >HTTP/1.0 200 OK              print <<'ending_print_tag';
Leggi l'RFC su HTTP.
-- 
ciao, | [Per rispondere togli "toglimi" dal mio indirizzo.]
Marco | * The Internet is full. Go away.  -- Joel Furr *
Newsgroup: it.comp.lang.perl
Titolo: dimensionamento immagini

E possibile ridimensionare delle immagini gif/jpg ?
grazie carlo

 E possibile ridimensionare delle immagini gif/jpg ?
Un po' OT non credi?;)
Cmq puoi usare "convert" presente nel package ImageMagick.
Ciao
Matteo
-- 
      Matteo Sgalaberni                |    Web    : 
http://www.sgala.com
      --                               |    E-Mail : 
mat...@sgala.com
      [Internet&Linux Development]     |    @IRCNet: SgAlA @ #linux-it
      [PHP, Perl, SQL, etc...    ]     |

pensavo ci fossero delle funzioni perl per farlo.....
Image Magic invece risiede nel server vero? Se il server che fa hosting non
ce l'ha sono da capo....
grazie comunque
(non volevo essere OT)
ciao

 
Si è discusso di questo argomento su questo stesso newsgroup proprio in
questi giorni. Da' un occhiata al thread "Modulo per resize immagini".
Max

Newsgroup: it.comp.lang.perl
Titolo: use Net::SMTP; da Win.

use Net::SMTP;
my $conn=Net::SMTP->new('
mail.inwind.it
') or die 'Unable to connect to
dsthost.dstdomain.tld';
$conn->mail('me\@
xtrader.net
');
$conn->to('xxx\@
inwind.it
');
$conn->data("subject: Read the fucking manual\r\n\r\n"."Good bye!\r\n");
$conn->quit();
    $smtp = Net::SMTP->new('
mail.inwind.it
');
    $smtp->mail('io\@
inwind.it
');
    $smtp->to('xxx\@
inwind.it
');
    $smtp->data();
    $smtp->datasend("To: postmaster\n");
    $smtp->datasend("\n");
    $smtp->datasend("A simple test message\n");
    $smtp->dataend();
    $smtp->quit;
perche' non succede nulla?
Grazie

 perche' non succede nulla?
perche` forse il server smtp non ti permette il relay
Charlie

Newsgroup: it.comp.lang.perl
Titolo: Perl VS Python: secondo voi?

Cosa rispondereste ad uno che vi dice:
"Perl fa cacare, W Python" e vi mostra questa immagine:
http://www.python.org/pics/kick_camels_butt.gif
contenuta in questa pagina (da leggere)
http://www.python.org/doc/Comparisons.html
--------------------------------
Inviato via 
http://usenet.libero.it

Cosa rispondereste ad uno che vi dice:
E perché mai sarebbe necessario rispondergli qualcosa?
Ciao.

Newsgroup: it.comp.lang.perl
Titolo: sull'installazione di AWStats....

salve a tutti..
non riesco a capire una cosa...
solitamente registro i siti presso un provider che mi fornisce
preinstallati alcuni script utili e le statistiche con AWStats.
Ora ho fatto un sito htt://
www.agriturismosantarosa.it
 che però non è
hostato presso quel provider, poichè i clienti avevano già un
servizio di hosting attivo...
ora volevo fornirgli delle statistiche (ovviamente con il mitico
AWStats) ma da quello che posso capire dai pochi manuali chiari che ho
trovato, forse non posso installarlo in remoto, ma dovrei farlo
direttamente sulla macchina per poter agire sul web server..... ho
capito bene?
Oppure posso installarlo anche in remoto?
Help please!
--
simple_maL


Credo proprio di no.
AWStat deve essere installato sul web server. Dovresti chiedere a chi si 
occupa dell'hosting di quel sito.

ok, grazie...
--
simple_maL
Newsgroup: it.comp.lang.perl
Titolo: Database e pagine WEB

Ecco il mio problema:
in una pagina WEB devo pubblicare una tabella con questi campi: nome
dell'oggetto, descrizione, codice, prezzo ed indirizzo e-mail del fornitore.
Fino qui niente di nuovo con FP importo la tabella da EXCEL ed e`tutto OK.
Ma ora viene il bello: la mia idea sarebbe di attivare un link ad esempio
sul nome del prodotto, cliccandoci sopra mi dovrebbe apparire un form che mi
chieda di inserire la quantita` del prodotto da ordinare, confermando
dovra`essere inviata una mail al fornitore che contenga nome dell'oggetto,
descrizione, codice, prezzo e quantita` ed una in copia a me. Tenete conto
che queste pagine saranno su di un server NT di una Intranet aziendale.
Avete qualche idea ? CGI ? VB ? Java ? Java script ? Io lo vorrei il
piu`semplice possibile.
Molte grazie.

piu`semplice possibile.
CGI, VB, Java, Javascript sono OT qui, (mi sembrava
pure semplice, mah...)
Oha
-- 
#include <disclaimer.h>
Newsgroup: it.comp.lang.perl
Titolo: SPLIT?

Salve a tutti,
ringrazio ancora tutti quelli che mi hanno aiutato.
La domanda che vi chiedo oggi è  questa:
devo togliere da una variabile che contiene un indirizzo internet, la parte
iniziale che è l'indirizzo stesso... quale istruzione devo usare? SPLIT? Che
altro?
ESEMPIO
la variabile indirizzo contiene
http://www.yahoo.com/categories/cgi-bin/........
..
e mi deve rimanere solo /categories/cgi-bin/
GRAZIE

 e mi deve rimanere solo /categories/cgi-bin/
Partendo dal presupposto che non penso tu possa imparare il Perl dal NG, ti
consiglierei, per il tuo bene, di leggerti o un paio di manuali, o, al
limite, se proprio sei uno di quelli che pensa "Ma che me ne frega, a me il
perl serve solo per fare 'sto counter, poi puo' pure bruciare", prova a
leggere una mini-guida on-line (ne e' pieno il web a partire da
www.html.it
). Tuttavia la mia e' solo una considerazione, diciamo cosi',
etica e forse anche poco importante. Visto che non sei OT, il mio consiglio
per cio' che stai cercando di fare e' il seguente:
. Per gestire le stringhe usa il pattern substitution che ti permette
appunto di trasformare stringhe date in stringhe che vuoi ottenere: es.
#!/usr/bin/perl
$stringa = "prova";
$stringa =~ s/p//;
print "$stringa\n";
questo script dara' in output la stringa: "rova". Cio' a dimostrazione del
fatto che con l'espressione di pattern substitution sopra utilizzata ho
eliminato da "prova" la sola "p", o meglio ho sostituito la "p" con niente.
Questo e' lo strumento che dovresti usare, mi scuserai se non ti spiego nei
dettagli come funziona.
. Piu' diffusamente, per il tuo problema in particolare, io popolerei un
array o anche un hash con gli indirizzi dei domini: es.
@domini_ind = ("
http://www.yahoo.it
", "
http://www.altavista.com
", ...)
(a te la scelta dell'istruzione che dovra' svolgere la suddetta procedura),
per poi, tramite un ciclo ( controllato da foreach ad es. ), ripulire tutti
gli indirizzi completi dalle sottostringhe che non vuoi piu' e che sono
memorizzate come stringhe nell'array di cui sopra.
Premetto che e' solo un'idea, non l'ho provata, non avendo l'esigenza ed il
tempo, a te la scelta.
Ciao e alla prossima,
asast

 e mi deve rimanere solo /categories/cgi-bin/
Usa il modulo (praticamente standard) URI
 use URI;
 $u = URI->new( "
http://www.yahoo.com/categories/cgi-bin/
");
 print $u->path;
 
dovrebbe stamparti "/categories/cgi-bin/"
Dettagli nella manpage.
Maurizio
-- 
Maurizio M. Munafo' / 
mmmu...@netscape.net
"Consider Phlebas, who was once handsome and tall as you" (T.S.Eliot)

 dovrebbe stamparti "/categories/cgi-bin/"
un grazie anche da me, Maurizio, non conoscevo il modulo e mi risultera'
utile.
asast

Usa il modulo (praticamente standard) URI
Ma forse se serve solo a questo usare il modulo e' un po' esoso...
$url='
http://www.dominio.tld/parte/da/vedere/
';
$url=~m|^http://.+?/(.*)$|;
print "$1\n";
dovrebbe funzionare ed essere piu' efficente
-- 
Saluti,
Giancarlo




 SALUTI
La tua presenza non e' di alcun fastidio.
Il mio era un consiglio, mi sembra di avere fatto tutte le premesse
necessarie, e in piu' ti ho suggerito anche un metodo, o no?
ciao,
asast
Newsgroup: it.comp.lang.perl
Titolo: Glob

Che sappiate, l'activeperl version 5.003_07 ha qualche problema con glob?
Mi da errore se utilizzo un path con spazi, funziona ok invece se utilizzo
il path ms-dos.


E' possibile. Ormai ActiveState Perl e' arrivato alla Build 522 
(Perl 5.005_03). Puoi consultare il loro Changelog per scoprirlo.
Sicuramente le Build della serie 500 sono anni luce meglio delle precedenti
serie 300. Soprattutto sono allineate alla versione corrente di Perl.
Maurizio
-- 
Maurizio M. Munafo' / 
mmmu...@netscape.net
"Consider Phlebas, who was once handsome and tall as you" (T.S.Eliot)

 ICQ# 1980563

Newsgroup: it.comp.lang.perl
Titolo: aiutate un aspirante programmatore

ciao a tutti voi amanti del Perl.
Io mi sto appassionando sempre piu' a questo tipo di programmazione.
Chi mi sa consigliare dei testi, o dove  posso andare a reperire
informazioni per entrare in questo mondo?
Grazie a tutti
mIRCO

 wrote in message
GpqX4.51182$EY1.5...@news.infostrada.it...


Newsgroup: it.comp.lang.perl
Titolo: Metacaratteri in STDIN

Se in una variabile l'utente memorizza una @ o un $, l'interprete in alcuni
casi pasticcia un po': c'è un modo per dire all'interprete che
$var = <STDIN>;
deve contenere solo caratteri normali? (quindi @ deve essere trattato come
un carattere normale)
--
bye
Erix    UIN: 72432400
http://erix.cjb.net

un carattere normale)
Secondo me, fintanto che non usi la variabile in un contesto in cui viene
interpolata (un'espressione regolare, forse?), quello che c'e' dentro a
perl non interessa. Comunque immagino si possa usare quotemeta.
Ciao.

 perl non interessa. Comunque immagino si possa usare quotemeta.
Espressioni regolari e alcune funzioni come split().
Quotemeta dovrebbe proprio fare al caso mio, ti ringrazio.


Espressioni regolari e alcune funzioni come split().
Nella parte del pattern, dici (primo parametro)? Cioe' sempre come
espressione regolare?
Potresti dare altrimenti qualche esempio?
Perche' io ho fatto milioni di split, senza curarmi affatto di che cosa ci
fosse dentro la stringa da analizzare, e non ho mai incontrato questo
problema.
Ciao.

 problema.
Infatti mi sbagliavo, non c'entra la @.


Newsgroup: it.comp.lang.perl
Titolo: Errore di scrittura dopo 10.000 successi

Il problema č abbastanza strano.
Lo script in perl che faccio girare su una RedHat6.2 scarica file da
internet
di piccole dimensioni e li salva sul disco.
Il problema si verifica dopo che ho scaricato dai 900 ai 12000 file.
Addirittura non riesco neanche a salvare automaticamente dallo script
una traccia dell'errre in un file di log. Ho provato a modificare il
parametro
del sistema operativo, riguardo i file aperti contemporaneamente, ma
come
mi aspettavo non ha dato alcun cambiamento xche i file che scrivo li
richiudo subito dopo.
Grazie dell'attenzione, se non sono stato chiaro posso dare piů
particolari

no è che hai la partizione piena??
Max
Newsgroup: it.comp.lang.perl
Titolo: Vorrei imparare

Dove trovo manuali e sortgenti per imparare il perl ?

 Dove trovo manuali e sortgenti per imparare il perl ?
In italiano ?!?!?...
... in libreria: i libri della O'Reilly sul perl e' opinione diffusa nel
mondo che siano i migliori
....... in italia sono editi da Apogeo ....
.... in rete: c'e' la guida su Html.it 
http://www.html.it/perl/index.html
........ oppure 
http://www.isinet.it/~marco/perl/
....... in inglese ne trovi a sfare ......
Ciao
    Daniele

Newsgroup: it.comp.lang.perl
Titolo: posizione finestra 2

Ok ho capito!
Ma è possibile fare una funzione in perl, la quale fa si che quando un
utente clicca su un determinato link, gli kieda la password?
Manuel

utente clicca su un determinato link, gli kieda la password?
Che cosa c'entra il perl?
Sara cura del server http fare quello che deve fare quando deve fare quello
che deve fare, e sarà tua cura dire al server http che cosa deve fare e
quando.
Ciao.

 utente clicca su un determinato link, gli kieda la password?
Qui hai una scelta tra alcune possibilita`. Potresti ad esempio usare
l'autenticazione del server HTTP: in questo caso devi smanettare con
.htaccess e poi, da CGI, ti trovi il nome dell'utente nella variabile
d'ambiente REMOTE_USER. Facendo questo tipo di scelta, ottieni che il
browser msotri la tipica dialog box in cui vengono chiesti user e
password.
In alternativa c'e` il metodo "fai da te", che poi e` quello piu`
utilizzato: gestisci l'autenticazione direttamente da script, chiedendo
nome e password tramite form HTML. Una volta ottenuti, puoi mantenere lo
"stato" tra un request e l'altro da parte dell'utente in vari modi, ad
esempio utilizzando i cookie.
Facendo una ricerca sul web trovi vari esempi di entrambe le soluzioni.
A presto, Michele.
Newsgroup: it.comp.lang.perl
Titolo: qualche consiglio

Devo fare un programmino perl che mi crei in modo casuale un calendario di
un campionato di calcio, dopo aver inserito un determinato numero di
squadre.
Io avevo pensato di usare la funzione rand per estrarre in modo casuale due
squadra da un array contenente tutto le squadre e poi inserire la partita in
un array associativo. Per le partite seguenti ho inserito dei controlli
perchè la stessa partita non venga ripetuta.
C'è però un PROBLEMINO: ogni tanto (spesso) il programma si pianta perchè
gira all'infinito in un ciclo di controllo; dopo qualche giornata infatti,
se le scelte delle partite precedenti non sono state fatte secondo un
determinato criterio (ma non riesco a capire quale possa essere), non c'è
più nessuna possibilità di trovare una partita che non sia già stata
disputata in precedenza per poter completare la giornata....
Spero di essermi spiegato anche se sono stato un po' contorto...
C'è qualche amina pia che mi può dare qualche consiglio??
Ciao Matteo :-)
email: 
BeberL...@valsugana.com

C'è qualche amina pia che mi può dare qualche consiglio??
Ho il sospetto (ma non l'ho dimostrato) che tutti i "round-robin"
ammissibili possano essere generati con eguale probabilita`
nel seguente modo:
A -- generare il round-robin "canonico" a 2N squadre:
    prima giornata:
            1-2
            3-4
            ecc
    giornata successiva: lasciando la squadra 1 al suo
    posto "in alto a sinistra" nel tabellone, considerare
    le altre squadre come poste su di una "ruota" in
    senso (ad esempio) antiorario:
        2-3-5-...-6-4
    e far "avanzare" la ruota di un passo: chi giocava
    con la squadra 1 lo scrivi subito sotto ad essa,
    tutte le altre squadre che erano in seconda colonna
    le scrivi un posto piu` sopra -- la squadra che era
    scritta in fondo alla prima colonna la passi in fondo
    alla seconda, la 1 resta al suo posto, e tutte le
    altre squadre che erano in prima colonna le scrivi
    un posto piu` sotto.
    Ripetere N volte.
(Questo algoritmo, e` facile dimostrarlo, genera
appunto un round-robin -- certo non "casuale"!)
B -- "randomizzare" l'ordine delle squadre (cioe`
       l'assegnazione dei "numeri" da 1 a 2N)
C -- randomizzare l'ordine delle giornate
D -- randomizzare la scelta in casa/fuori casa
       per ogni partita (se rilevante)
Non che ci abbia provato molto "intensamente",
lo ammetto, ma cosi` a braccio non riesco a
dimostrare che in questo modo si possono in
effetti generare tutti i round-robin (che tutti
quelli generati siano equiprobabili, e` chiaro,
ma, sono tutti?), forse perche` non ho trovato
un modo di enumerare tutti i round-robin...
qualche matematico al salvataggio...?-)
Alex
Newsgroup: it.comp.lang.perl
Titolo: creare file...

Esiste un comando in perl per creare un file??
Per le directoru mkdir ma per creare un cgi per esempio???
Grazias
Ciao

 Per le directoru mkdir ma per creare un cgi per esempio???
Creare un CGI da un CGI? Ma ti vuoi fare del male??
Ciao
M.
-- 
____________________________________________________
    Life's just a blast, it's moving realy fast    
better stay on top or life will kick you in the ass.
ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ
Newsgroup: it.comp.lang.perl
Titolo: Recuperpo posta tramite script e esecuzione oraria

Ho un piccolo grosso problema, devo creare uno script che si colleghi ad una
determita casella di posta es. 
pi...@pippo.com
 ed uno ad uno scaricare i
messaggi contenuti in essa i quali contengono un attachment con lo stesso nome.
Qualcuno puo' darmi un suggerimento o un link su dove trovare degli esempi.
Grazie 1000
Latino


 Net::POP3
-- 
Maurizio M. Munafo' / 
mmmu...@netscape.net
"Consider Phlebas, who was once handsome and tall as you" (T.S.Eliot)


Grazie ora riesco a ricevere i messaggi ma non riesco a salvare i una
determinata cartella gli attach che sono dei file .zip come posso fare.
Grazie Ancora.

 
MIME::*
http://www.cpan.org/modules/by-module/MIME/MIME-tools-4.124.tar.gz
--
Max M.
perl -e "print((split/(.{5})/,'00.itomm20xim@cma')[6,5,3,1])"
Newsgroup: it.comp.lang.perl
Titolo: Le basi!

Hi a tutti,
vi sarei molto grato se mi sbloccaste (sono un principiante!) da una
situazione davvero imbarazzante. Imbarazzante perche' credo che mi stia
perdendo in un bicchiere d'acqua. Vengo al problema:
Ho editato un file html:
-------------
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF">
<div align="center">
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <h1>Avvia la cgi cliccando su submit!</h1>
  <form name="avviacgi" action="cgi-bin/page.cgi" method="post" >
    <p>
      <input type="submit" name="Submit" value="submit">
    </p>
    </form>
 </div>
</body>
</html>
--------------
quindi la relativa page.cgi:
--------------
#!/perl/bin/perl
print "Content-type:text/html\n\n";
#Setto la variabile pos in modo da scegliere la pagina che voglio
visualizzare.
$dato=0
#definisco il controllo if per poter selezionare la pagina corrispondente al
valore "dato"
if ($dato=0){
print "<html>\n";
print "<head>\n";
print "<title>pagina 1</title>\n";
print "<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1">\n";
print "</head>\n";
print "<body bgcolor="#FF0000">\n";
print "<div align="center">\n";
print "  <p>&nbsp;</p>\n";
print "  <p>&nbsp;</p>\n";
print "  <p><font face="Arial, AvantGarde Bk BT, Futura Lt BT"><b><font
size="4" color="#FFFFFF">Pagina
    1</font></b></font></p>\n";
print "</div>\n";
print "</body>\n";
print "</html>\n";}
else{
print "<html>\n";
print "<head>\n";
print "<title>pagina 2</title>\n";
print "<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1">\n";
print "</head>\n";
print "<body bgcolor="#0000FF">\n";
print "<div align="center">\n";
print "  <p>&nbsp;</p>\n";
print "  <p>&nbsp;</p>\n";
print "  <p><font face="Arial, AvantGarde Bk BT, Futura Lt BT"><b><font
size="4" color="#FFFFFF">Pagina
    2 </font></b></font></p>\n";
print "</div>\n";
print "</body>\n";
print "</html>\n";}
--------------------
Chiaramente si tratta di un semplice esercizio, ma proprio non riesco a
vedere le due pagine che la cgi mi dovrebbe generare secondo il valore della
variabile preimpostata $dato. Sia l'indirizzo di perl.exe che della cgi
stessa sono giusti! Utilizzo Perl v.5.6.0 e NT 4.00.
Ah, dimenticavo: cliccando sul submit attengo la risposta "Impossibile
aprire la pagina!", la prova e' stata condotta a server web alzato.
Un grazie a chi avra' il tempo e la voglia di rispondermi.
Loris

 wrote in message
news:8khua7$1jva$1...@stargate1.inet.it...


if ($dato=0){
Scusa ma quetso cosa vuol dire ?
l'operatore di confronto e' "==" o "eq"!
Ciao
Alessandro
 

the...@libero.it
 wrote:

Sbagliato, non sono lo stesso operatore.
== e' per l'eguaglianza tra numeri
eq per l'eguaglianza tra stringhe.
Se provi
if ('a' == 'b')
sempre vero, perche' le stringhe vengono convertite
in numeri prima del confronto. In questo caso, essendo
delle lettere, saranno convertite a 0 (zero)
------------------------------------------
Roberto Congiu
        Alchemy Communications
                LA California USA