Salve gente...
Stò realizzando un vocabolario in php mysql e volevo rendervi partecipi della mia iniziativa.. (in seguito porterò il tutto su uno spazio av.. per fare un sito web)
dunque per risolvere il problema ho deciso di fare un database "vocabbolario" con una sola tabella vocabbolo.
Quindi:
Codice:
vocabbolo(idvocabbolo,parola,definizione,punteggio);
dove idvocabbolo è pk.
Quindi le query che verranno eseguite sono queste:
Codice:
insert into vocabbolo
(parola,definizione)
values(' ' , ' ');
DELETE FROM vocabbolo
where idvocabbolo =
UPDATE vocabbolo
SET parola = o definizione =
where idvocabolo =
select *
from vocabbolo
Bene..
Allora bensì io sia in grado in php di realizzare qualcosina (inserimento, modifica, cancellazione dati) mi è sorto qualche dubbio:
1 siccome il vocabbolario è pubblico una persona potrebbe mettere la parola x con una definizione.. un'altra la stessa parola x ma con un'altra definizione magari corretta magari esattamente l'opposto magari etc...
in primis ho pensato di mettere un:
Codice:
alter table vocabbolo
add definizione text
quindi aggiungere "campi" definizione all'infinito..
ma è del tutto inutile .. siccome la chiave primaria è la variabile idparola e non parola
nulla mi vieta di poter mettere due volte la parola x poiche entrambe le parole inserite hanno id differenti..
quindi mi è balsato in mente l'idea di creare una sorta di VOTAZIONE della definizione in php in modo tale che gli utenti votino la definizione che a loro sembra più bella o che semplicemente guardando il punteggio ottenuto dalla definizione scelgano di conseguenza a quale attingere e io quale cancellare di conseguenza.
Ma non riesco a capacitarmi..
come potrei risolvere?
Ho pensato...
tra vocabbolo e voto esiste un'associazione N a 1 quindi un vocabbolo ha più voti..
quindi:
Codice:
vocabbolo(idvocabbolo,parola,definizione,punteggio,idvoto);
voto(idvoto,votazione);
Per la stampa potrei (in mysql) selezionare la media dei voti di quel vocabbolo e stamparli.. e per l'inserimento inserire un voto corrispondente alla parola x..
ma non so come farlo in php.
2 la modifica,cancellazione dei dati è una cosa che vorrei riservare ad un gruppo ristretto di utenti..
ma la gestione degli utenti è una cosa che potremmo fare in secondo loco..
grazie della gentile collaborazione
saluti...
EDIT:
Questa è una piccola bozza di script php..
che mi mostra il "vocabbolario"
mi dovrebbe dare la possibilità di votare o vedere la media dei voti
Codice PHP:
<?php
echo "estrazione dati<br>";
$db = mysql_connect("localhost", "root", "si aspetta na.. ora te la dico la password...");
mysql_select_db('vocabbolario', $db);
$query = mysql_query("SELECT * FROM vocabbolo");
//dovrei fare una queri che mi stampi parola per parola la media del punteggio
//ad essa associato
echo "<table border=\"1\">";
echo "<tr>"."<td>indirizzo</td>"."<td>descrizione</td><td>punteggio</td><td>vota</td</tr>";
while($row = mysql_fetch_array($query, MYSQL_ASSOC)) {
$parola = utf8_decode($row["parola"]);
echo "<tr>";
echo "<td>".$parola."</td>";
echo "<td>".utf8_decode($row["definizione"])."</td>";
echo "<td>".utf8_decode($row["punteggio"])."</td>";
//qui dovrei inserire un qualcosa per far votare la definizione
echo "</tr>";
}
echo "</table>";
mysql_close($db);
?>