SELECT Singoli elementi

DieciJack

Nuovo Utente
22 Feb 2015
13
0
0
Salve a tutti, da qualche tempo sto cercando di apprendere PHP tramite la lettura di un libro. Il mio obiettivo è quello di creare un blog tramite PHP/MySQL e sto facendo delle prove per comprendere bene la funzione SELECT. Ho un problema con la visualizzazione dei singoli risultati per adattarli al template HTML che ho scritto.

Questo è il codice che ho utilizzato per la query e la conversione in array:

PHP:
<?php 
    $sql = 'SELECT * FROM `articoli` ORDER BY `data_articolo` DESC';
    $result = $pdo->query($sql);

while ($row = $result->fetch())
{
  $articles_id[] = $row['id_articolo'];
  $articles_titles[] = stripslashes($row['titolo_articolo']);
  $articles_texts[] = stripslashes($row['testo_articolo']);
  $articles_authors[] = stripslashes($row['autore_articolo']);
  $articles_dates[] = $row['data_articolo'];
}
?>

Nel libro per visualizzare i risultati viene utilizzato un foreach, in questo modo:

(L'ho adattato per la visualizzazione dell'autore)

PHP:
<?php foreach ($articles_authors as $article_author): ?>
<?php echo htmlspecialchars($article_author, ENT_QUOTES, 'UTF-8'); ?> <br />
<?php endforeach; ?>

Questo codice mi restituisce tutti i campi del database e non i singoli risultati. Purtroppo il ciclo foreach mi ha confuso molto le idee e non mi è ancora ben chiaro come utilizzarlo. Un altro dei miei quesiti è come rendere "dinamica" la classe che ho creato per il blog:

HTML:
<section class="blog">
<h2>Titolo Articolo<p>Data: *, pubblicato da: *</p></h2>
<article class="blog">Testo Articolo</article>
</section>

Ossia come ripetere questa classe per visualizzare ogni singolo articolo con il proprio titolo, autore, testo ecc.
Grazie in anticipo per le vostre risposte.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, io mi fermerei sul primo ciclo while, con capisco il motivo di creare un altro array.
Esempio
PHP:
<?php
while ($row = $result->fetch()) {
    ?>
    <div class="articolo">
        <div class="titolo">
    <?php echo stripslashes($row['titolo_articolo']); ?>
        </div>
        <div class="testo">
    <?php echo stripslashes($row['testo_articolo']); ?><
        </div>
    </div>
    <?php
}
 

DieciJack

Nuovo Utente
22 Feb 2015
13
0
0
Grazie mille per la risposta adesso funziona tutto alla perfezione, ho adattato il codice in questo modo:

PHP:
while ($row = $result->fetch())
{
?>
<section class="blog">
<div class="articolo">
<h2><i class="fa fa-file-text-o" style="margin-right: 8px;"></i><?php echo stripslashes($row['titolo_articolo']); ?>
<p>Data: <?php echo ($row['data_articolo']); ?>, pubblicato da: <?php echo stripslashes($row['autore_articolo']); ?></p></h2>
<article class="blog"><?php echo stripslashes($row['testo_articolo']); ?></article>
</div>
</section>
	<?php 
}
?>

Adesso quello che mi chiedo è se la funzione htmslpecialchars è ancora necessaria con l'echo dei risultati. Da quello che ho capito è molto importante per la sicurezza visto che converte i caratteri, ma non saprei affiancarla alla funzione stripslashes che ho utilizzato. E' possibile utilizzarle entrambi oppure una delle due non è necessaria?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Le funzioni si possono concatenare
PHP:
htmlspecialchars(stripslashes($row['testo_articolo']));
ma , per la sicurezza è importante filtrare i dati prima di inserirli nel database non tanto quando si visualizzano,
 
Discussioni simili
Autore Titolo Forum Risposte Data
L Ripetere Campi disabilitando input in riferimento ad un valore della select jQuery 0
otto9due Ordinare option di una select Javascript 5
W MySQL ciclo in SELECT MySQL 0
W MySQL SELECT list dinamica MySQL 0
M Select Option dentro una Table jQuery 2
G Colorare menu select attraverso ricerca php PHP 0
L problema con query select PHP 2
F menù select dinamico da db in php PHP 3
D popolare campi tra th alla select PHP 36
M Estrarre valore con SELECT COUNT PHP 0
M Creare un campo input select quantità di un numero intero prelevato dal db PHP 3
L Select Dinamiche...da txt? PHP 3
E Php select option e ajax PHP 23
R Select concatenata che non funziona la seconda volta Ajax 3
L select join e sottrazione punti PHP 13
L input dati con inser into select ? PHP 4
V hierarchy-select jQuery 0
Emix Select concatenate php sql ajax PHP 2
F query e form con select multipla PHP 17
T recupero valori select multipla da android Javascript 3
J php, scegliere autista da select e mostrare se ha fatto un incidente PHP 8
Tommy03 Select in ordine per numero di record MySQL 7
T problema con select dinamica con jquery Javascript 0
J Far comparire e scomparire un div con un select Javascript 1
M Opzioni select da 1 a 200 PHP 0
I Fatal error: Query Failed! SQL: SELECT * INTO OUTFILE PHP 1
C input in sostituzione della select PHP 2
G Insert into select - Aiuto MySQL 0
max1974 autocomplete trigger select jQuery 0
X [Select] Valori chiave non presenti in un'altra tabella MySQL 2
M Estrarre dati da una select HTML PHP 3
MarcoGrazia jquery validate, necessità di validare almeno un elemento select su due jQuery 1
T [PHP] Autocompilazione input multiple da una select PHP 1
Alex_70 [PHP] Visualizzare foto tramite select PHP 0
S [PHP] aggiornamento table tramite select senza ricaricare la pagina PHP 5
psicomia Gestione funzione in javascript in tabella richiamare"textarea" valori preimpostati in "select" Javascript 2
M [PHP] Problema con query select PHP 2
C [PHP] Controllo <select> comportamento anomalo PHP 2
G [PHP] Select con opzioni dipendenti da un'altra select PHP 3
L [Javascript] Select option in campi input Javascript 4
M [PHP] Problemi con select PHP 6
S [RISOLTO] aggiorna tabella da select option asp classic Classic ASP 7
S [ASP] SALVARE VALORE SELECT OPTION SU CAMPO TABELLA ACCESS Classic ASP 9
max1974 [Javascript] malfunzionamento select Javascript 0
M [PHP] Drop down in campo select PHP 1
D [PHP] Select dinamici PHP 2
G sql select con array in php PHP 1
L [PHP] Form da select compilare campi automaticamente PHP 1
T [php] problema creazione query select-where PHP 5
Monital [PHP] query update e select insieme ma frazionando l'arrray PHP 12

Discussioni simili