- Home
- Categorie
- Coding e Sistemistica
- PHP
- Richiamare news attraverso ID
-
Richiamare news attraverso ID
ciao a tutti!
sono veramente agli inizi di PHP e, anche se con grandi difficoltà, qualche volta ho delle minime soddisfazioni che mi fanno proseguire...
scusate da subito le stupidate che verranno fuori in ordine sparso fra i miei dubbi...dunque, sto usando php+MySQL...
vorrei creare una pagina di NEWS nella quale si possano leggere diciamo una decina di NEWS in tutto. le NEWS sono in 2 lingue (IT e EN).
ora, ho creato la mia bella tabella SQL (IDnews, newsTesto e newsLingua)
e vorrei poter decidere quali news visualizzare (ad es. le NEWS 1,3,5,6,10, 12 ecc).
in principio ho pensato che richiamarle a seconda dell'ID fosse la scelta giusta, ma non riesco proprio a trovare il modo per farlo!! accidenti...potete darmi una mano.
intanto mi sto leggendo un po' di manuali che non fanno mai male!grazie a tutti!
patrick
-
select newsTesto
from tabella
where IDnews='$Idscelto';
-
bhe se devi deciderle tu ok..altrimenti..visto che sono news ci inserisci un campo date/time e fai caricare cn una semplice query le ultime 10 o 5 news che hai inserito..
allora per sceglierle tu fai cosi
[PHP]
$query = mysql_query("SELECT * FROM tabella WHERE IDnews='1' || IDnews='3' || IDnews='5' || IDnews='6' || IDnews='10' || IDnews='12' ");
[/PHP]altrimenti come ti ho detto io ( CHE TI CONSIGLIO FORTEMENTE )
[PHP]
$query = mysql_query("SELECT * FROM tabella ORDER BY campo_data DESC LIMIT 10");
[/PHP]
-
wow,
siete stati velocissimi.
grazie!ora per fare un echo di una sola news devo fare in questo modo?
<td width="700" align="left" valign="middle" class="site-text"><?php echo $rstPage->Fields("IDnews='1' ") ?></td>
sono un po' confuso...
patrick
-
cosa stai usando delle classi?
-
sì. per formattare il testo che voglio richiamare dal DB.
ho pensato fosse più comodo.
faccio male?mumble mumlble...
-
Ciao canedrago,e benvenuto nel forum GT.
Se hai un indirizzo url del tipo pagina.php**?id=numeronews **puoi fare così:[php]
<?
// dati configurazione accesso a mysql$res=mysql_fetch_assoc(mysql_query("select * from tabella where IDnews='$_GET[id]'"));
// ho selezionato tutti i campi della tabella dove l'id è la variabile $_GET[id].
echo $res[newsTesto];
//scrivo il testo
?>
[/php]
-
grazie del benvenuto!
sto trovando un sacco di info utili su questo forum...dunque, la situazione è questa: ho creato una pagina per mostrare delle news. il php di questa pagina (news.php) richiama inizialmente le funzioni per connettersi al DB e per ottenere le info dalla tabella che contiene i titoli e i testi di tutte le pagine (es. home, contatti, portfolio, news, ecc).
faccio in seguito un'altra richiesta php per ottenere da un'altra tabella i testi di queste 10 benedette news sempre comprendendo la variabile lingua (IT e EN).
l'URL si presenta così: news.php?lang=ITvorrei mostrare 10 news (una piccola immagine thumbnail 160x160 px affiancata da un testo di 3 righe per ogni news).
ho provato a creare 10 spazi e a richiamare una specifica immagine + testo per ogni spazio, ma forse non è la scelta migliore vero?
ho come l'impressione si possa fare diversamente e meglio...patrick
-
ho provato in questo modo, ma ancora c'è qualcosa che non va...
<?php
//Connection statement
require_once('../Connections/connection.php');// begin Recordset
$varlang = 'IT';
if (isset($_GET["lang"])) {
$varlang = $_GET["lang"];
}$query_rstProd = "SELECT * FROM pages WHERE pageNome = '". substr($_SERVER['PHP_SELF'], (strrpos( $_SERVER['SCRIPT_NAME'], "/") + 1)) ."'";
$rstPage = $connection->SelectLimit($query_rstProd) or die($connection->ErrorMsg());?>
<?php
//Connection statement
require_once('../Connections/connection.php');// begin Recordset
$colname__rstnewssez = 'IT';
if (isset($_GET['lang'])) {
$colname__rstnewssez = $_GET['lang'];
}
$query_rstnewssez = printf("SELECT * FROM newssez WHERE newsLingua = '%s' ORDER BY IDnews ASC", $colname__rstnewssez);
$rstnewssez = $connection->SelectLimit($query_rstnewssez) or die($connection->ErrorMsg());
$totalRows_rstnewssez = $rstnewssez->RecordCount();
// end Recordset//PHP ADODB document - made with PHAkt 3.6.0
?>ALL'INTERNO DELLA PAGINA, PER VISUALIZZARE IL TESTO DELLA NEWS USO:
<tr>
<td width="285" height="150"> </td>
<td width="220" height="150" valign="middle"><img src="../_images/news01.jpg" width="160" height="160"></td>
<td width="700" align="left" valign="middle" class="site-text"><?php echo $rstnews->Fields("newsTesto$varlang") ?></td>
</tr>dove sbaglio?
-
mumble mumble...
ho fatto qualche passo avanti, ma ancora non sono riuscito a risolvere il quesito principale, vale a dire mostrare il testo di una specifica NEWS accanto a un'immagine (non caricata su DB) ma richiamata semplicemente da HTML.per ora utilizzo questa forma:
<?php
//Connection statement
require_once('../Connections/conn.php');$varlang = 'IT';
if (isset($_GET["lang"])) {
$varlang = $_GET["lang"];
}$query_rstProd = "SELECT * FROM sitepages WHERE pageNome = '". substr($_SERVER['PHP_SELF'], (strrpos( $_SERVER['SCRIPT_NAME'], "/") + 1)) ."'";
$rstPage = $conn->SelectLimit($query_rstProd) or die($conn->ErrorMsg());?>
<?php
//Connection statement
require_once('../Connections/conn.php');$colname__rstprodnews = 'IT';
if (isset($_GET['lang'])) {
$colname__rstprodnews = $_GET['lang'];
}
$query_rstprodnews = sprintf("SELECT * FROM pastornews WHERE NewsLingua = '%s' ORDER BY IDnews DESC", $colname__rstprodnews);
$rstprodnews = $conn->SelectLimit($query_rstprodnews) or die($conn->ErrorMsg());
$totalRows_rstprodnews = $rstprodnews->RecordCount();
?>
in seguito, richiamo il primo testo accanto all'immagine così:
<tr>
<td width="220" height="150" valign="middle"><a href="../_images/img_news/news01_big.jpg"><img src="../_images/news01.jpg"></a></td>
<td width="700" align="left" valign="middle" class="site-text">
<?php echo $rstprodnews->Fields('newsNome'); ?><?php if ( (isset($_GET["news"]) && $_GET["news"] == $rstprodnews->Fields('')) ){ echo "</b>"; }?>
</ul></td> </tr>
ovviamente, in questo modo non seleziono alcun testo preciso, ma mostro semplicemente l'ultimo inserito nel DB (avendo usato DESC come metodo).
qualcuno può aiutarmi a capire come richiamare il testo di un'altra NEWS.
please! sto perdendo ogni speranza...
sigh..grazie
ciao
-
Scarica
poi lo installi
poi lo usi per aprire il tuo database
Clikki il bottone per creare le pagine php ed ecco fatto!
-
ciao orion7,
grazie della dritta!
ma purtroppo la situazione è più complicata, oppure sono io a non saper usare al meglio il programma che mi hai consigliato.penso che il mio problema debba essere risolto in altro modo.
ciao
-
ci ho messo un po' ma ci sono arrivato...
con firefox tutto funziona per benino, ma di explorer le immagini non ci sono e il testo ho una formattazione diversa?!?!?!?!
ma cosa accipicchia è successo?!?!!?
non mi era mai capitato prima.se può esservi utile vi posto il codice con cui richiamo i dati:
<table width="955" height="200" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="195" height="120"> </td>
<td width="190" height="200" valign="middle"><a href="../_images/news/news_big/<?php echo $rstprodnews->Fields('imgNews'); ?>"<img src="../_images/news/news_small/width="160" height="160"<?php echo $rstprodnews->Fields('imgNews'); ?>"</td>
<td width="500" align="left" valign="middle" class="site-text"><?php echo $rstprodnews->Fields('newsNome'); ?><?php if ( (isset($_GET["news"]) && $_GET["news"] == $rstprodnews->Fields('')) ){ echo "</b>"; }?></td>
</tr>
</table>sta diventando più complicato del previsto...