Indice del forum Olimpo Informatico
I Forum di Zeus News
Leggi la newsletter gratuita - Attiva il Menu compatto
 
 FAQFAQ   CercaCerca   Lista utentiLista utenti   GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo   Messaggi privatiMessaggi privati   Log inLog in 

    Newsletter RSS Facebook Twitter Contatti Ricerca
ho bisogno di uno script PHP per gestione eventi
Nuovo argomento   Rispondi    Indice del forum -> Linguaggi per Internet
Precedente :: Successivo  
Autore Messaggio
wildchloee
Eroe in grazia degli dei
Eroe in grazia degli dei


Registrato: 22/09/07 11:56
Messaggi: 190
Residenza: Davanti al mio bambino(notebook)

MessaggioInviato: 16 Dic 2007 14:46    Oggetto: ho bisogno di uno script PHP per gestione eventi Rispondi citando

cari olimpi,
scrivo a voi perchè molto spesso avete trovato per me soluzioni che da sola avrei sognato e forse nemmeno.

ho necessità di uno script php molto semplice, ma che, a quanto pare, sul web non c'è; a dir la verità, ho cercato tantissimo ma non so se ho usato le chiavi giuste.

in poche parole, mi serve uno script php basato su flatfile che mi consenta di far apparire, nel mio sito, gli eventi della giornata. senz'altro, senza calendari cliccabili o cose del genere: vorrei solo mettere nel mio sito un bel box dal titolo "cosa succede oggi" e vorrei che, tramite lo script, sul sito comparissero gli eventi che io ho inserito nel flatfile, relativi alla data di oggi.

di php come linguaggio so molto poco, uso soltanto gli echo per richiamare testi frequenti che altrimenti dovrei riscrivere uno per uno in ogni pagina.
so configurare script già fatti, se non troppo complessi.
non sapendo programmare in php non posso neanche farmelo da me, lo scriptino che mi serve...

qualcuno mi aiuta nella ricerca?
o magari anche a costruirlo ex novo, se siete esperti... a partire da un flatfile che contiene date alle quali attribuisco gli eventi...

grazie come sempre, olimpi ^_^ Fiori
Top
Profilo Invia messaggio privato HomePage
kluster
Dio maturo
Dio maturo


Registrato: 15/04/06 12:14
Messaggi: 2898

MessaggioInviato: 16 Dic 2007 21:44    Oggetto: Rispondi citando

risposta veloce, poi domani ti dico meglio.

Leggi un csv o un xml, cerca su google "php read csv" o "php parse xml", "php csv into array"

scrivi on un csv (file di testo delimitati da ; tra i campi e ogni nuovo record va a capo)
es.
Codice:

10/01/2007;festa della cozza ghiacciata; portate le tronchesine
11/01/2007; festa della cozza ghiacciata reprise; ci vole 2 giorni per romperle


poi lo leggi scorrendo l'array via php controllando se il valore è uguale alla data di oggi e nel caso fai gli echo che servono

Ora scappo
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11559
Residenza: Tokelau

MessaggioInviato: 17 Dic 2007 10:22    Oggetto: Rispondi citando

al volo, puoi fare una cosa tipo:

Codice:
$newsstream="";
$news=file($FILEROOT."news.txt");
for ($i=0;$i<count($news);$i++)  {
  $k=strpos($news[$i],"|");
  $txt=substr($news[$i],$k+1);
  $newsstream.='<li>' . substr($news[$i],0,$k). ' - ' . $txt . '</li>';
}
echo $newsstream;


in pratica leggi un file news.txt fatto così:

Codice:
19/12/2007|Grande Notizia di oggi!
18/12/2007|Altra notizia...


e lo script sopra lo smonta e rimonta in modo molto semplice, creando una lista in html, poi con CSS gli dai lo stile... insomma, da lì in poi è facile Wink
Top
Profilo Invia messaggio privato HomePage
kluster
Dio maturo
Dio maturo


Registrato: 15/04/06 12:14
Messaggi: 2898

MessaggioInviato: 17 Dic 2007 13:24    Oggetto: Rispondi citando

ok anch'io al volo ti dico la mia, sempre via csv (che poi puoi valorizzare con OpenOffice Calc o Excel)

Codice:

<?php
 $fd= fopen ("dati.csv", "r");
// data di oggi
$oggi = "" . date("d/m/Y");
//il punto è per essere sicuro sia interpretato come testo, magari è inutile
$ii   = 0;
 
// leggo fino a fine file
while (!feof ($fd))
{
  //pesco una riga alla volta
  $riga=fgets($fd, 4096);
   //se la riga non è vuota
  if($riga!="")
  {
    //butto in un array il contenuto splittato
    //il delimintatore è il punto e virgola
    $arr=split(?;', $riga);
    //l'array poi sarà composto da:
    //[0] la data| [1] il titolo | [2] la descrizione | [3] il link
   
    if ($oggi==$arr[0])
    {
      echo "<h2>$arr[1]</h2>";
      echo "<p>";
      echo  $arr[2];
      echo "<br><a href="$arr[3]">leggi</a>";
      echo "</p>
    }
  i++;
  }
 
}
fclose($fd);
if (i==0)
{
  echo "Nessun evento particolare per oggi, torna domani e se ci sei rimasto male ammazzati";
}
 
?>


metti questo in un include che ne so news.php

poi fai
<body>
...
<? include('/news.php'); ?>

p.s non l'ho testato cmq la soluzioni di sverX è + semplice, forse ti ci trovi meglio

il tracciato sarebbe quello di prima
Citazione:

10/01/2007;festa della cozza ghiacciata; portate le tronchesine; /cozza_e_tronchesine.htm
11/01/2007; festa della cozza ghiacciata reprise; ci vole 2 giorni per romperle;/cozza_e_olio_di_gomito.htm
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11559
Residenza: Tokelau

MessaggioInviato: 17 Dic 2007 14:04    Oggetto: Rispondi citando

sai che non mi ero accorto che le news che dovevano essere visualizzate sono solo quelle del giorno corrente?

allora manca un if...

Codice:
$newsstream="";
$news=file($FILEROOT."news.txt");
for ($i=0;$i<count($news);$i++)  {
  $k=strpos($news[$i],"|");
  $data=substr($news[$i],0,$k)
  $txt=substr($news[$i],$k+1);
  if ($data==date("d/m/Y"))
    $newsstream.='<li>' . $data. ' - ' . $txt . '</li>';
}
echo $newsstream;
Top
Profilo Invia messaggio privato HomePage
wildchloee
Eroe in grazia degli dei
Eroe in grazia degli dei


Registrato: 22/09/07 11:56
Messaggi: 190
Residenza: Davanti al mio bambino(notebook)

MessaggioInviato: 17 Dic 2007 20:41    Oggetto: Rispondi citando

ma quanto siete carini? Fiori Very Happy

innanzitutto ringrazio tutti per le risposte, quanto prima testerò le varie opzioni e vi saprò dire il risultato!

GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE!
Top
Profilo Invia messaggio privato HomePage
wildchloee
Eroe in grazia degli dei
Eroe in grazia degli dei


Registrato: 22/09/07 11:56
Messaggi: 190
Residenza: Davanti al mio bambino(notebook)

MessaggioInviato: 17 Dic 2007 20:57    Oggetto: Rispondi citando

allora, dunque, prima prova: lo script di SverX mi dà questo errore

Citazione:
Parse error: syntax error, unexpected T_VARIABLE in /membri/fansitalia/prova/prova_eventi.php on line 15


cosa ho combinato? ho creato un nuovo file, con estensione php, e ho fatto così:

Codice:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>Untitled</title>
</head>
<body>

<?
$newsstream="";
$news=file($FILEROOT."events.txt");
for ($i=0;$i<count($news);$i++)  {
  $k=strpos($news[$i],"|");
  $data=substr($news[$i],0,$k)
  $txt=substr($news[$i],$k+1);
  if ($data==date("d/m/Y"))
    $newsstream.='<li>' . $data. ' - ' . $txt . '</li>';
}
echo $newsstream;
?>

</body>
</html>

cioè ho cambiato solo il nome del file per evitare confusione con un altro file che si chiama già news.txt.

nel file events.txt ho scritto questo:
Citazione:
17/12/2007|se leggi questo testo, significa che funzia!
19/12/2007|fiera della coca cola (mi avete contagiata con queste fiere!)

sono certa di aver sbagliato qualcosa, solo che non conoscendo nel dettaglio il php non so cosa sia...

per quanto riguarda la soluzione di kluster, cos'è un file csv? so che in passato vi salvavo i contatti di outlook express e ne conosco più o meno il funzionamento, ma niente di più... Embarassed

grazie ancora nè!
Top
Profilo Invia messaggio privato HomePage
kluster
Dio maturo
Dio maturo


Registrato: 15/04/06 12:14
Messaggi: 2898

MessaggioInviato: 17 Dic 2007 21:33    Oggetto: Rispondi citando

un file csv ossia comma separated value (valori separati da virgola) è un semplice file di testo in cui ogni record ha la struttura divisa da delimitatori (di solito ";") e la fine.

Il codice di SverX è corretto ho testato il funzionamento ed è ok, controlla se ti sei dimenticata qualche carattere di troppo.

By the way, già che c'ero ho testato pure il mio codice, c'era un paio d'errori di punteggiatura:

leggiCsv.php
Codice:

<?php
$fd      = fopen ("dati.csv", "r");
$oggi    = date("d/m/Y");
$ii      = 0;
while (!feof ($fd))
{
  $riga=fgets($fd, 4096);
  if($riga!="")
  {
    $arr= split(';', $riga);
    if ($oggi==$arr[0])
    {
      echo "<h2>$arr[1]</h2>";
      echo "<p>$arr[2]<br><a href=\"$arr[3]\">leggi</a></p>";
    }
   $ii++;
  }
}
fclose($fd);
if ($ii==0)  echo "Nessun evento particolare per oggi, torna domani e se ci sei rimasto male ammazzati";
?>


esempio.html (file di esempio)
Codice:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<body>
<? include('./leggiCSV.php'); ?>
</body>
</html>


dati.csv:
Codice:

17/12/2007;festa della cozza ghiacciata; portate le tronchesine;/cozza_e_tronchesine.htm
17/12/2007;festa della cozza ghiacciata 2; portate le tronchesine;/cozza_e_tronchesine2.htm
18/12/2007;festa della cozza ghiacciata 3; portate le tronchesine;/cozza_e_tronchesine3.htm
19/12/2007;festa della cozza ghiacciata 4; portate le tronchesine;/cozza_e_tronchesine4.htm
21/12/2007;festa della cozza ghiacciata 5; portate le tronchesine;/cozza_e_tronchesine5.htm


ti dicevo csv perchè è comodo gestirlo con excel o openoffice:


ma se devi fare segnalazioni semplici, basta un file di testo semplice come events.txt


L'ultima modifica di kluster il 17 Dic 2007 21:44, modificato 2 volte
Top
Profilo Invia messaggio privato
wildchloee
Eroe in grazia degli dei
Eroe in grazia degli dei


Registrato: 22/09/07 11:56
Messaggi: 190
Residenza: Davanti al mio bambino(notebook)

MessaggioInviato: 17 Dic 2007 21:36    Oggetto: Rispondi citando

non dubitavo che il codice di SverX fosse corretto, anzi mi chiedevo cosa ho sbagliato? come mai non funziona a me? Crying or Very sad
Top
Profilo Invia messaggio privato HomePage
kluster
Dio maturo
Dio maturo


Registrato: 15/04/06 12:14
Messaggi: 2898

MessaggioInviato: 17 Dic 2007 21:46    Oggetto: Rispondi citando

controlla che ho editato il post.
Cmq, io ho copiato ed incollato il codice del tuo quote su un file php, ho creato al volo il file events.txt e mi funziona Shocked
Top
Profilo Invia messaggio privato
kluster
Dio maturo
Dio maturo


Registrato: 15/04/06 12:14
Messaggi: 2898

MessaggioInviato: 17 Dic 2007 21:48    Oggetto: Rispondi citando

strano ora mi fa lo stesso errore Shocked
controllo
Top
Profilo Invia messaggio privato
kluster
Dio maturo
Dio maturo


Registrato: 15/04/06 12:14
Messaggi: 2898

MessaggioInviato: 17 Dic 2007 21:49    Oggetto: Rispondi citando

ah era un punto e virgola che avevo corretto automaticamente distrattamente:

Citazione:

<?
$newsstream="";
$news=file($FILEROOT."events.txt");
for ($i=0;$i<count($news);$i++) {
$k=strpos($news[$i],"|");
$data=substr($news[$i],0,$k);
$txt=substr($news[$i],$k+1);
if ($data==date("d/m/Y"))
$newsstream.='<li>' . $data. ' - ' . $txt . '</li>';
}
echo $newsstream;
?>


si dimenticarsi un punto e virgola nel php è un classico, non ci pensavo
anche io a volte ci sbatto le corna prima di accorgermene, anche perchè l'errore che ti comunica è fuorviante
Top
Profilo Invia messaggio privato
wildchloee
Eroe in grazia degli dei
Eroe in grazia degli dei


Registrato: 22/09/07 11:56
Messaggi: 190
Residenza: Davanti al mio bambino(notebook)

MessaggioInviato: 17 Dic 2007 21:58    Oggetto: Rispondi citando

GRAZIEEEE!

testando testando avevo scoperto anch'io il punto e virgola mancante Wink
vi ringrazio tantissimo kluster e sverx, ora vi credito nel mio sito se non è un problema Very Happy
Top
Profilo Invia messaggio privato HomePage
kluster
Dio maturo
Dio maturo


Registrato: 15/04/06 12:14
Messaggi: 2898

MessaggioInviato: 17 Dic 2007 22:00    Oggetto: Rispondi citando

ah ci fai credito? bello! cosa vendi? Mr. Green

fai fai
Top
Profilo Invia messaggio privato
wildchloee
Eroe in grazia degli dei
Eroe in grazia degli dei


Registrato: 22/09/07 11:56
Messaggi: 190
Residenza: Davanti al mio bambino(notebook)

MessaggioInviato: 17 Dic 2007 22:28    Oggetto: Rispondi citando

bè, quando ci vuole ci vuole!
mi avete dato aiuto per una questione piuttosto importante per un sito come il mio! Wink

vi ho ringraziati pubblicamente qui: http://coldcasefansita.altervista.org/credits.php ma anche in home page Wink

Fiori
Top
Profilo Invia messaggio privato HomePage
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11559
Residenza: Tokelau

MessaggioInviato: 18 Dic 2007 09:57    Oggetto: Rispondi citando

kluster ha scritto:
ah era un punto e virgola


Embarassed Embarassed ops Neutral

Citazione:
vi ho ringraziati pubblicamente


Embarassed Embarassed Smile
Top
Profilo Invia messaggio privato HomePage
kluster
Dio maturo
Dio maturo


Registrato: 15/04/06 12:14
Messaggi: 2898

MessaggioInviato: 18 Dic 2007 11:58    Oggetto: Rispondi

grazie chloee Smile
Top
Profilo Invia messaggio privato
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> Linguaggi per Internet Tutti i fusi orari sono GMT + 1 ora
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi