Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 05-10-2004, 08:46   #1
Fede83
Member
 
Iscritto dal: May 2004
Messaggi: 42
inserimento

Ciao a tuti ecco il mio problema: Sto facendo la parte amministratore di un sito web

Io ho fatto una tabella categoria con: idcategoria, categoria, collegamento (che sarebbe il link della categoria);

Poi ho una tabella prodotti con: idprodotto, nome, marca ....tutti i dati per il prodotto, e idcategoria.

Quello che non capisco è:io inserisco i dati del prodotto e la categoria, e l'inserimento nel database prodotti lo fa, (solo che nel campo categoria ce sempre scritto il numero zero) ma quando clicco su una categoria esempio accessori, non mi visualizza il prodotto.

Esempio, la categoria accessori è linkata a accessori.php Se io a questa pagina gli dico di leggere la tabella prodotti, mi visualizza tutti i prodotti, io invece voglio che nella categoria accessori mi visualizza gli accessori, nei case i case e cosi via, ma come si fa con un solo database?

Sto diventando matta.....

Questo è il codice che ho scritto:




<html>
<head>
<title>ComputerGratis.it</title>
</head>

<body bgcolor="#F7FBA4">
<br><br>
<center><h1>Inserisci un nuovo Prodotto</h1></center>
<br><br><br><br><br>
<?php
error_reporting (0);
if(!isset($_POST)) $_POST=$HTTP_POST_VARS;

else{
$nome=addslashes($_POST['nome']);
$marca=addslashes($_POST['marca']);
$descrizione=addslashes($_POST['descrizione']);
$codice=addslashes($_POST['codice']);
$prezzo=addslashes($_POST['prezzo']);
$conn = @mysql_connect("localhost","root","") or die("connessione fallita");
@mysql_select_db("computergratis") or die ("connessione fallita");

$sql = "INSERT INTO prodotti(nome, marca, descrizione, codice, prezzo) VALUES ('$nome','$marca','$descrizione','$codice','$prezzo')";
$risultato = @mysql_query($sql) or die ("query fallita");
print "<font size=3 face=terminal>Inserimento effettuato correttamente.</font><a href=scheda.php>SCHEDA PRODOTTI</a>";


}
?>
<form action="prodotti.php" method="post">
<table border="1" bordercolor="black" align="center">
<tr>
<td colspan="2" bgcolor="white"><font align="center" size="5" face="Courier"><b>Dati del Prodotto</b></font></td>
</tr>
<tr>
<td bgcolor="white"><font size="3" face="arial">Nome Prodotto</font></td>
<td><input type="text" name="nome"></td>
</tr>
<tr>
<td bgcolor="white"><font size="3" face="arial">Categoria</font></td>
<td><select name="categoria">
<?
$sql="SELECT * FROM categorie;";
$result=mysql_query($sql) or die($sql);
while($line=mysql_fetch_array($result)){
print "<option value=".$line['idcategoria'].">".$line['categoria'];
}

?>

</select>
</td>
</tr>
<tr>
<td bgcolor="white"><font size="3" face="arial">Marca</font></td>
<td><input type="text" name="marca"></td>
</tr>
<tr>
<td bgcolor="white"><font size="3" face="arial">Descrizione</font></td>
<td><input type="text" name="descrizione"></td>
</tr>
<tr>
<td bgcolor="white"><font size="3" face="arial">Codice</font></td>
<td><input type="text" name="codice"></td>
</tr>
<tr>
<td bgcolor="white"><font size="3" face="arial">Prezzo</font></td>
<td><input type="text" name="prezzo"></td>
</tr>
<tr>
<td bgcolor="white"><font size="3" face="arial">Indirizzo scheda</font></td>
<td><input type="text" name="indirizzo"></td>
</tr>
<tr>
<td colspan="2" align="center" bgcolor="white"><input type="submit" name="inserisci" value="inserisci"></td>
</tr>
</table>
</form>

<br><br><br><br><br><br><br><br>
<a href="catalogo.php"><img border="0" src="logo/indietro.gif"></a>
<a href="index.php"><img align="right" border="0" src="logo/home.gif"></a>
</body>
</html>

Ciao e grazie
Fede83 è offline   Rispondi citando il messaggio o parte di esso
Old 05-10-2004, 10:03   #2
maxnaldo
Senior Member
 
L'Avatar di maxnaldo
 
Iscritto dal: Sep 2004
Messaggi: 2985
la categoria cioè "idcategoria" devi metterla anche nella tabella "Prodotti"

ogni prodotto deve avere anche l'id categoria a cui è associato

poi quando vuoi selezionare tutti i prodotti di una categoria ti basterà fare una select con idcategoria = valore che ti interessa.

potrai fare una JOIN fra le due tabelle:

select p.*,c.* from prodotti as p LEFT JOIN categorie as c ON p.IDCATEGORIA=c.IDCATEGORIA WHERE c.IDCATEGORIA=xxx

in questo modo tiri su dalle due tabelle tutti i dati che ti servono per i prodotti associati ad una categoria.

in un database relazionale devi avere appunto una "relazione" tra le due tabelle.

questa relazione è appunto il campo "IDCATEGORIA" ripetuto in tutte e due le tabelle

a questo punto per ogni record inserito nella tabella categorie avrai N records inseriti nella tabella prodotti.

la relazione è 1 a molti

la chiave primaria della tabella categorie è IDCATEGORIA

la chiave primaria della tabella prodotti è IDCATEGORIA+CODICEPRODOTTO

maxnaldo è offline   Rispondi citando il messaggio o parte di esso
Old 05-10-2004, 10:25   #3
Fede83
Member
 
Iscritto dal: May 2004
Messaggi: 42
fede

Ti ringrazio per l'aiuto, ma mi hanno detto di utilizzare questo:


http:\\...\categoria.php?id=1

invece di fare i link, cioè nella tabella categoria ci sono i seguenti campi: idcategoria, categoria, collegamento (che sarebbe il link di ogni categoria)

Prodotti contiene, idprodotto (chiaveprimaria), idcategoria(non ho capito se devo mettere anche qui chiave primaria) e poi nomeprodotto, masca, prezzo, descrizione, codice.

cosi devo unilrle lo stesso le due tabelle?


non mi odiare
Fede83 è offline   Rispondi citando il messaggio o parte di esso
Old 05-10-2004, 10:36   #4
maxnaldo
Senior Member
 
L'Avatar di maxnaldo
 
Iscritto dal: Sep 2004
Messaggi: 2985
la tabella prodotti contiene anche l'idcategoria, puoi anche non definirlo come chiave primaria, se lo fai significa che non possono esistere due prodotti con lo stesso codice anche se su categorie diverse, va anche bene così.

la chiamata "categoria.php?id=1" serve a passare un parametro alla pagina categoria...il parametro lo troverai nella variabile $id

quel parametro ti servirà per richiamare con la select tutti i prodotti per quell'$id e quindi visualizzarne l'elenco.

in pratica nella pagina "categoria.php" farai una select:

SELECT * from Prodotti WHERE IDCATEGORIA=$id

in realtà non ho capito a cosa ti serva il campo "collegamento" nella tabella categorie.

il collegamento , se intendi il "link" alla pagina categoria te lo costruisci passando semplicemente l'ID alla pagina.

per passare uno o più paremetri ad una pagina si usa:

nomepagina.php?parametro1=valore1&parametro2=valore2&parametro3=valore3

nella pagina ti ritroverai dunque tre variabili definite così:
$parametro1='valore1';
$parametro2='valore2';
$parametro3='valore3';


maxnaldo è offline   Rispondi citando il messaggio o parte di esso
Old 05-10-2004, 10:48   #5
maxnaldo
Senior Member
 
L'Avatar di maxnaldo
 
Iscritto dal: Sep 2004
Messaggi: 2985
ah, scusa, non avevo notato che usi le variabili HTTP_POST_VARS

if(!isset($_POST)) $_POST=$HTTP_POST_VARS;

nel caso di parametri passati direttamente attraverso il link significa che stai usando il metodo GET

quindi per beccarti l'ID non dovrai fare altro che:

if(!isset($_GET)) $_GET=$HTTP_GET_VARS;

a quel punto hai il tuo parametro ID come:

$_GET['id']
maxnaldo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
Speciale TV in offerta su Amazon: Hisens...
Non c'è pace per Trezor: 347.000 e-mail ...
È un portatile Dell e li vale tut...
Apple iPhone 17 Pro Max 256GB a 1.195€ (...
GPT-6 Astra è davvero AGI o non s...
LG OLED G6S 48'' a 845€ e G6 55'' a 1368...
Mantax Otax: il malware Android che crip...
Musk incassa un altro maxi contratto IA:...
Le vendite di EV sono esplose in tutto i...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 02:12.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v