|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Nov 2003
Messaggi: 90
|
[php - rookie!] Piccolo problema :D
Ciao ragazzi, sto iniziando a lavorare con php/mysql e spero possiate farmi luce su un piccolo problema in php. Sono proprio agli inizi quindi non linciatemi se dico qualche fesseria
sto creando un piccolo archivo film e sono inciampato in un piccolo problema quando cerco di gestire gli attori. Premetto che in mysql gestisco tutto in una singola tabella e il campo attori è un varchar dove inserisco in un unico record tutti gli attori che hanno partecipato al film separati da una virgola. Ora la cosa che non riesco a fare è una chiamata al campo attori, farne una lista(fin qui ok), e un link singolo a ogni attore che porta a una pagina X con una variabile che lo identifica (per esempio il nome). Del tipo vado sulla scheda di un film, mi genero tutta la lista degli attori e ognuno porta a una nuova pagina con la variabile del nome in modo che poi possa cercare altre informazioni.E possibile farlo? ho provato con explode, trasformato in un array e poi scritto una cosa del genere per provare foreach ($attori as $value) { echo "<a href="scheda.php?id=$value>" . $value . "</a>" . "<br>"; } ma con il cavolo funziona Ora ho sbagliato tutto? qualcosa? esiste altri metodi? illuminatemi |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Ciao, ma come esegui la query?
Ad esempio se hai la tabella attori fatta così: Codice:
id name Codice PHP:
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
|
io mi muoverei per avere un design migliore di questo, una tabella per gli attori, una per i film....
__________________
![]() |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Quote:
Segui il consiglio di vizzz e cerca di "progettare" meglio il tuo database creando varie tabelle come ti ha suggerito |
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Nov 2002
Messaggi: 11745
|
ad ogni modo dato che esiste una comoda funzione serialize e unserialize xche' non usare quella?
![]() poi se il varchar nn basta meglio passare a uno smalltext
__________________
Ho fatto affari con: troppi per elencarli Vendo: NAS PRO QNAP 4 BAIE 419P+ CON LCD |
![]() |
![]() |
![]() |
#6 |
Member
Iscritto dal: Nov 2003
Messaggi: 90
|
grazie delle risposte ora vedo di spiegarmi un po meglio
![]() la mia tabella è costruita così prendendo in esempio un film id | 1 titolo | Terminator regia | James Cameron cast | Arnold Schwarzenegger, Michael Biehn, Linda Hamilton, Paul Winfield, Lance Henriksen, Rick Rossovich, Bess Motta io ora vorrei generare una lista verticale del cast dove ogni attore ha è un link a una pagina (esempio scheda.php) che trasporta una variabile con il proprio nome. Visto che il campo cast tiene conto di tutto il cast attori come una unica stringa testo mi sembra impossibile lavorarci! Ho provato a usare la funzione explode per separare ogni singolo attore in un array ma poi non riesco a lavorarci comunque ![]() Come altra soluzione ho creato una ulteriore tabella che gestisce le persone (attori, regia, sceneggiatori e così via) in modo da risolvere facilmente le chiamate visto che ogni record gestice solo un attore e non tutto il cast del film come nella tabella mostrata su. Comunque mi interessava capire se esiste un metodo anche per risolvere la situazione precedente Spero di essermi fatto capire e tardi e sabato sera ![]() grande comunità sempre gentili! ![]() |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Beh se proprio vuoi mantenere la stringa di attori, con l'explode non dovresti avere problemi...
Codice PHP:
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:50.