- Home
- Categorie
- Coding e Sistemistica
- MYSQL e altri Database
- [SCRIPT] News con utilizzo di un Database MySQL
-
Ciao a tutti,
sono nuova nel forum.Ho installato lo script e devo dire che è molto semplice e funziona tutto correttamente.
Non sono esperta di php ma vorrei provare a creare una nuova pagina in cui compare solo la data e il titolo dell'ultima news inserita nel database (da inserire poi in home page).
Ho creato già una nuova pagina in cui visualizzo solo la data e il titolo però mi appaiono tutte le news pubblicate, come faccio a visualizzare solo l'ultima news inserita? è possibile?
Complimenti comunque per l'ottimo script.
-
Ciao Degele e benvenuta nel Forum GT.
Per visualizzare solo l'ultima news dovrai ordinare per data DESC e completare la query con l'aggiunta di LIMIT 1.
P.S. Felice che risulti utile.
-
Grazie.
Ma modificandola non mi compare più nulla nella pagina.
Il mio codice è questo:
[php]<?
$time=time(); // preleviamo dal server il timestamp attuale
/** selezioniamo i dati dalla nostra tabella news prelevando solo i dati da pubblicare,- che abbiano una data di pubblicazione inferiore o uguale alla data odierna
- che abbiano la data di fine pubblicazione maggiore o uguale alla data odierna oppure uguale a 0 (che indica che non ha scadenza)
- ordiniamo alla fine per data di pubblicazione ASC o DESC a seconda della scelta da noi effettuata all'atto dell'installazione
-
ed infine estraiamo solo il numero di news che ci interessano.
*/
$sql= "SELECT * FROM news WHERE publish=1
AND publish_data<='$time'
AND (unpublish_data>='$time' OR unpublish_data=0)
ORDER BY publish_data DESC";
if ($limit!="" || $limit!=1) // verifichiamo se abbiamo deciso di vedere tutte le news o solo alcune
{
$sql .=" LIMIT 1,".$limit.""; // se abbiamo impostato un limire estraiamo dai risultati della query solo quelle che ci interessano
}
$query=@mysql_query($sql) or die (mysql_error());
?>
<div id="contentnewshome">
<?
// cicliamo adesso il risultato della nostra query per visualizzare le nostre news
while ($row=mysql_fetch_array($query))
{
?>
<span class="datanews"><? echo date("d/m/Y", $row['publish_data']); ?></span><br /> <!-- avendo salvato il valore data in timestamp utilizziamo la funzione date per visualizzare la data nel formato italiano -->
<span class="titlenews"><? echo $row['title']; ?></span><br />
<?
}
?>
</div>[/php]Dove sbaglio?
-
Prova a modificarlo così:
[PHP]<?
$time=time();
$sql="SELECT * FROM news WHERE publish=1
AND publish_data<='$time'
AND (unpublish_data>='$time' OR unpublish_data=0)
ORDER BY publish_data DESC LIMIT 1";
$query=@mysql_query($sql) or die (mysql_error());
?>
<div id="contentnewshome">
<?
while ($row=mysql_fetch_array($query))
{
?>
<span class="datanews"><? echo date("d/m/Y", $row['publish_data']); ?></span><br /> <!-- avendo salvato il valore data in timestamp utilizziamo la funzione date per visualizzare la data nel formato italiano -->
<span class="titlenews"><? echo $row['title']; ?></span><br />
<?
}
?>
</div>[/PHP]
-
funziona!!! Sono troppo contenta!!!Sono riuscita a far diventare anche il campo titolo di 255 caratteri leggendo un thread precedente!
Ora se possibile ti chiedo un'altra cosa sulla data.
Mi piacerebbe che il mese della data risultasse in lettere non in un numeri.
Ora (ad esempio) compare 05/11/2011 invece mi piacerebbe che ci fosse scritto 05 novembre 2011.
Grazie ancora
-
Prova così:
[php]<?php
while ($row=mysql_fetch_array($query))
{
$daynews=date("d", $row['publish_data']);
// grazie a creatorweb per l'utile script http://www.giorgiotave.it/forum/scripting-e-risorse-utili/139801-script-calendario-prenotazioni.html#post892351
$mesi["January"]="Gennaio";
$mesi["February"]="Febbraio";
$mesi["March"]="Marzo";
$mesi["April"]="Aprile";
$mesi["May"]="Maggio";
$mesi["June"]="Giugno";
$mesi["July"]="Luglio";
$mesi["August"]="Agosto";
$mesi["September"]="Settembre";
$mesi["October"]="Ottobre";
$mesi["November"]="Novembre";
$mesi["December"]="Dicembre";$mesenews['mese_text'] = $mesi[date("F", $row['publish_data'])];
$yearnews=date("Y", $row['publish_data']);$datenews=$daynews." ".$mesenews['mese_text']." ".$yearnews;
?>
<span class="datanews"><?php echo $datenews; ?></span><br /> <!-- avendo salvato il valore data in timestamp utilizziamo la funzione date per visualizzare la data nel formato italiano -->
<span class="titlenews"><? echo $row['title']; ?></span><br />
<?php
}
?>[/php]Ho incluso uno script di creatorweb che ti trasforma il mese testuale da inglese ad italiano.
-
Perfetto grazie, funziona!!!
E grazie anche a creatorweb!
Grazie, grazie, grazie.
-
Sono sempre quella di prima.
Non riesco più a staccarmi da questo editor e sto cercando di personalizzarlo il più possibile, ora sono passata a personalizzare la parte di amministrazione.
Ho provato a collegare nel file admin.php il file tiny_simple.js e funziona!
Per le mie necessità il file advanced ha troppi elementi però nel file tiny_simple.js secondo me manca un pulsante, o meglio due pulsanti fondamentali: aggiungi link e disattiva link, si possono inserire i due comandi nel file tiny_simple.js magari prendendoli dal file tiny_advanced.js, se sì come?
Nel frattempo che arrivi qualche suggerimento, provo a smanettarci un pò!
E se troverò la soluzione la posterò.
-
Anche il normal ha troppi pulsanti?
Fatti una copia del normal, nel caso, ed elimina i pulsanti che non ti servono:
theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,|,image,|,cleanup,|,insertdate,inserttime,|,preview,|,forecolor,backcolor",
Se per esempio vuoi togliere il pulsante pasteword, basta che lo cancelli così da avere:
theme_advanced_buttons2 : "cut,copy,paste,pastetext,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,|,image,|,cleanup,|,insertdate,inserttime,|,preview,|,forecolor,backcolor",
-
Sinceramente se applico il normal nel scr del file admin poi nel browser, nella mia parte di amministrazione non vedo nessun pulsante.
Mi sono fatta una copia dell'advance e sto provando a modificarlo,
lasciando solo nei theme options questa riga:
theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|, bullist,numlist,|,outdent,indent,blockquote,|,link,unlink",che sono i pulsanti che vorrei visualizzare, ma ne vedo altriin più.
Ora ci riprovo
-
Vedi altre righe di pulsanti?
Nel caso dovresti cancellare le altre righe theme_advanced_buttons2, theme_advanced_buttons3 e theme_advanced_buttons4.
Vedi se così li toglie, non ho testato ad esser sincero.
-
Risolto.
Eliminando completamente le righe in più non cambiava nulla.
Ho invece inserito le righe seguenti:
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",e sembra funzionare! La mia barra ora è proprio come la volevo io!
Ho solo un ultima domanda (giuro!), come faccio ad allungare il campo titolo nell'area di amministrazione?
Sono riuscita a rendere più grande il campo text area, dove si inserisce il testo della news, ma il campo titolo non ne vuole sapere.
Come posso fare?
-
Come non detto, risolto.
Ho aggiunto size="100".
Grazie ancora Samyorn per il tuo preziosissimo supporto.
-
File admin.php righe 96 e 100 (le input box) devi inserire il parametro size, per esempio:
[html]<input type="text" name="new_title" size="50" value=.... />[/html]Tramite il valore di size gestisci la grandezza della input box.EDIT: bene, hai fatto da sola.
Figurati, quando hai bisogno siam sempre quì.
-
Salve, chiedo aiuto per far in modo che il titolo della news risulti linkabile (alla stessa news comprensiva del campo descrizione). Qualcuno può aiutarmi?
Grazie in anticipo
-
Ciao frazoo e bentornato nel Forum GT, dato che è il tuo primo messaggio dal 2009.
Prima di poter linkare il titolo della news manca un passo fondamentale, tipo la pagina per visualizzare la singola news.
Potresti creare una pagina article.php che riceve via GET l'id della news e quindi la visualizzi e modificare la "costruzione" del titolo in news.php per dare il link con l'id:
[php]<span class="titlenews"><a href="article.php?id=<?php echo $row['id']; ?>" title="<?php echo $row['title']; ?>"><?php echo $row['title']; ?></a></span>[/php]
-
Ciao e grazie dell'accoglienza
domanda ma lo script che hai inserito ha necessità di funzionare dietro interrogazione al db, vero?
E... come si fa?
forse era meglio che in questi anni il silenzio s'impadronisse di me!
-
Cosa serve per utilizzarlo:
- che sia caricato sul server il modulo PHP 5 >
- un database MySQL
Come puoi leggere nel primo post è fondamentale avere un Db.
Edit: se hai modo di conoscere utente e password del Db e l'indirizzo dello stesso, lo script ha un pannello di installazione.
-
Si, certo ho già installato e fatto funzionare tutto, compreso l'upload di immagini...i particolari che mi mancano sono appunto come fare il link dal titolo e la possibilità di autoridimensionare l'immagine dopo l'upload
-
Il link dal titolo lo puoi fare per come ti ho scritto un paio di post fa. Ti dovrai creare la pagina article.php però.
[URL=http://www.giorgiotave.it/forum/gt-world/101972-forum-gt-disponibile-alle-versioni-per-telefoni-cellulari.html]Postato via Mobile