[PHP] Testo giornaliero automatico

  • Creatore Discussione Creatore Discussione Kolop
  • Data di inizio Data di inizio
Ciao @borgo italia per lo spazio funziona. Per il link intendevo tipo:
28/03/2017: Luca.
A Luca volevo linkare che mi portava tipo alla pagina che linkavo io.
Però non è indispensabile se non si può con quel codice non fa niente. Grazie lo stesso.
Ora dovrò compilare tutte le date xD.

PS: Un'altra cosa, ma se metto solo il nome non mi appare se invece metto Nome_Cognome si. Se volessi che anche se scrivo solo il nome appare? Il Nome_Cognome deve rimanere sempre però a volte scrivo solo il nome perché non mi serve il cognome. Grazie.
 
Ultima modifica:
ciao
cosa intendi per solo nome?
se intendi cosi
PHP:
$frase['Mario_Rossi']="28/03";//data odierna
$frase['Sofonisba_Verdi']="12/12";
$frase['Pancrazio_Verdi']="27/08";
$frase['Attenzio_Bianchi']="27/08";
$frase['Asdrubale']="28/03";//data odierna solo nome
//......
ho fatto una prova e questo è l'output
28/03/2017
Asdrubale, Mario Rossi

spiega meglio che tipo di link es
HTML:
<a href="pagina.php">Asdrubale</a>
un link generico a una tua pagina, oppure
HTML:
<a href="pagina_di_asdrubale.php">Asdrubale</a>
un link ad una pagina dedicata a Asdrubale?
nel secondo caso se non usi mysql prima o poi devi rifare tutto
 
Ciao @borgo italia si per il nome mi serve sia solo: Nome e sia Nome_Cognome, come hai fatto tu nell'esempio.
Per il link si un
HTML:
<a href="http://nomesito.altervista.org/?page=asdrubale">Asdrubale</a>
Tipo così. Ma se si deve fare per forza con MySql non fa niente non è importante.

Per la prima parte:
Io devo inserire solo Nomi, perché Nome_Cognome raramente. Però come hai fatto tu nell'esempio va bene.
Dimmi solo come fare per il link sennò non fa niente, va bene così. Grazie!
 
ciao
fare questo link
HTML:
<a href="http://nomesito.altervista.org/?page=asdrubale">Asdrubale</a>
è una cosa da poco, eventualmente basta modificare un po' lo script che ti ho postato, il problema nasce quando dopo aver letto la querystringa del get, cosa ci fai?
se ad esempio vuoi avere i dati di asdrubate (indirizzo, telefono...) o scrivi un'infinità di array tipo quello che ti ho postato (sai che caos), oppure se solo vuoi salutarlo il massimo che puoi fare è pressapoco questo
PHP:
<?php
$nome=$_GET['page'];
echo "ciao $nome";
?>
<!-- e tutto il resto uguale per qualsiasi nome -->
poi una cosa: quel link che hai scritto punta alla index (scritto così si)? non avendo messo il nome della pagina in pratica punta a se stessa, stessa pagina in cui hai il link
 
Ciao @borgo italia ti spiego. Io nella Index ho questo codice PHP:
PHP:
 <?php
            if(isset($_GET['page']) && file_exists('./pagine/'.$_GET['page'].'.html'))
                 include('./pagine/'.$_GET['page'].'.html');
            else
                include('news.php');
           ?>
Per creare pagine dinamiche. Nel caso non esiste mi porta dove ci sono le news.
Quindi ora i link delle mie pagine sono:
HTML:
<a href="http://nomesito.altervista.org/?page=asdrubale">Asdrubale</a>
<a href="http://nomesito.altervista.org/?page=marco">Marco</a>
<a href="http://nomesito.altervista.org/?page=kolop">Kolop</a>
Il link sarebbe la index solo che con quel codice invece di scrivere /index.php abbrevio con /?page=nomelink
Ma se basta modificare il codice non fa niente che si crea casino basta che non si creano bug o non funziona più il codice.
Sennò non fa niente non è importante inserire il link, era solo per far conoscere il personaggio che compie gli anni.
 
ciao
comunque ecco le modifiche per avere i link, così ti impratichisci un po con php
PHP:
<?php
$frase['Vertulliano']="28/03";
$frase['Mario_Rossi']="28/03";
$frase['Sofonisba_Verdi']="12/12";
$frase['Pancrazio_Verdi']="27/08";
$frase['Attenzio_Bianchi']="27/08";
$frase['Asdrubale']="28/03";
//...ecc...
//elabora
ksort($frase);//ordino alfabeticamente i nomi
$oggi=date("d/m");//leggi la data odierna
foreach($frase as $nome => $data){
    if($data==$oggi){
        $n_grezzo=strtolower( $nome);//tutto minuscolo e senza togliere l'undescore
        $n_pulito=ucwords(strtolower(strtr( $nome , "_" , " " )));
        $per_link="<a href=\"http://nomesito.altervista.org/?page=$n_grezzo\">$n_pulito</a>";
        $c[]=$per_link;
    }
}
//crei l'elenco di nomi
$compleanni=date("d/m/Y")."<br>".implode(", ",$c);
?>
uotput
28/03/2017
Asdrubale, Mario Rossi, Vertulliano

dove i vari nomi sono lkik con la loro querystringa
 
Ciao @borgo italia va bene il codice ma non si può fare che ad ogni nome inserisco io il link e non che se scrivo Mario_Rossi automaticamente va a mario_rossi anche perché il _ nel link io non li ho.
Poi un'altra cosa che sto notando ora che sto inserendo i nomi, non si può togliere la funziona che solo la 1° lettera mi scrive maiuscolo poi se scrivo tipo MarioJ la J me la scrive piccola. Grazie comunque (scusa se rompo xD).
 
ciao
certo che puoi toglierle le funzioni maiuscolo/minuscolo, l'unica cosa fare attenzione nello scrivevere nell'array, soprattutto se poi es devi fare degli if, "Pinco" è diverso da "pinco"
comunque con l'ultimo codice che ti ho postato crei es il link
<a href="http://nomesito.altervista.org/?page=kolop">Kolop</a>
mentre per _ è sempre bene usarli nelle chiavi degli array e nelle querystringhe, si evitano casini, e toglierli quando servono i nomi puliti es per mostrali a video
poi attento è molto prticoloso fare l'include via get
 
Ciao @borgo italia per togliere maiuscolo/minuscolo qual è il codice da togliere?
Comunque per il link finché è solo il nome va bene ma quando è Mario_Rossi il link diventa mario_rossi e nel mio sito io ho mariorossi senza il _ e quindi non mi trova la pagina. Però penso che leverò il link e rimarrò soltanto il nome. Grazie comunque.
 
ciao
per maiuscolo/minuscolo togli strtolower e ucwords
se nell'array la chiave è Mario_Rossi e ti serve MarioRossi
PHP:
$n_grezzo=strtr( $nome , "_" , "" );//elimina il _
 
Ciao @borgo italia ho risolto il maiuscolo/minuscolo. Comunque per il link ho optato toglierlo per un problema mio di link delle pagine, il codice funzionava. Grazie lo stesso.
Ricapitolo il codice finale:

PHP:
<?php
$frase['ProvaJ']="29/03";
$frase['Prova_A']="29/03";
//elabora
ksort($frase);
$oggi=date("d/m");
foreach($frase as $nome => $data){
    if($data==$oggi){
        $c[]=ucwords((strtr( $nome , "_" , " " )));
    }
}
$compleanni=date("d/m/Y")."<br>".implode(", ",$c);
?>

Come mi hai detto ho tolto: 'strtolower' da questo codice:
PHP:
$c[]=ucwords(strtolower(strtr( $nome , "_" , " " )));

Ucwords non l'ho tolto perché sennò non mi apparivano i nomi. Dimmi tu se ho fatto bene. Grazie.
 
Ciao @borgo italia scusami ma ho notato solo adesso che sto compilando il tutto.
Allora quando in un giorno ho due compleanni appare una , per separare i nomi ma se volessi che ogni nome va daccapo?
Tipo a posto di Mario Rossi, Mario, Giuseppe
Diventa:
Mario Rossi
Mario
Giuseppe

Poi un'altra cosa io ho impostato il codice nella index.php così:
PHP:
<div align="center">
<b>Compleanni del
<?php
//.........
require_once "compleanni.php";
echo "$compleanni";
//.......
?>
</b>
</div>

Però siccome la data appare nel file compleanni.php il div center mi porta anche i nomi. Come faccio a mettere il div center solo alla scritta Compleanni del + data e ai nomi sotto div left? Grazie ancora.
 
ciao
o nel file compleanni
PHP:
$compleanni="<div style=\"text-align:left;\">".date("d/m/Y")."<br>".implode('<br>',$c)."</div>";
oppure senza correggere nel file compleanni
PHP:
//.........
require_once "compleanni.php";
echo "<div style=\"text-align:left;\">$compleanni</div>";
//.......
 
Ciao @borgo italia ho provato a modificare nel file compleanni e va bene solo perché la data appare sotto?
Screen :
6VdI4X0.png

Mentre invece se modifico la index.php non succede niente cioé i nomi rimangono sempre ProvaJ, Prova però a sinistra e la data va sempre daccapo.
Lo spazio comunque c'è perché solo con <div align=center"> entra la data dopo Compleanni del.
Grazie.
 
Ciao @borgo italia allora in compleanni.php ho così:
PHP:
<?php
$frase['ProvaJ']="29/03";
$frase['Prova_A']="29/03";
//elabora
ksort($frase);
$oggi=date("d/m");
foreach($frase as $nome => $data){
if($data==$oggi){
$c[]=ucwords(strtr( $nome , "_" , " " ));
}
}
$compleanni=date("d/m/Y")."<br>".implode(", ",$c);
?>

nell'index.php ho così:
PHP:
<div align="center"><b>Compleanni del
<?php
//.........
require_once "compleanni.php";
echo "$compleanni";
//.......
?>
</b></div>

Dove devo mettere quel codice?



EDIT: Ho risolto. Rimango il testo centrale mi piace di più. Grazie di tutto @borgo italia :)
 
Ultima modifica:
Ciao @borgo italia scusami se riesumo un post vecchio ma siccome sto cambiando la grafica del sito devo cambiare una cosa del codice ma non so farlo. Durante la lista compleanni non voglio che appare la data come posso fare? Il codice è questo:

PHP:
<?php
$frase['ProvaJ']="25/04";
$frase['Prova_A']="25/04";
//elabora
ksort($frase);
$oggi=date("d/m");
foreach($frase as $nome => $data){
if($data==$oggi){
$c[]=ucwords(strtr( $nome , "_" , " " ));
}
}
$compleanni=date("d/m/Y")."<br>".implode('<br>',$c);
?>
 

Discussioni simili