campo con dati di un altro campo

snelfius

Nuovo Utente
19 Dic 2013
6
0
0
Ciao Ragazzi sono nuovo da queste parti!

Sto realizzando dei form di inserimento dati in php e mysql (e anche qualche javascript).

Il mio problema è:

ho 2 tabelle in mysql -- tab1 e tab2.
Vorrei che il campo "codice_prodotto" della tab2 si popoli automaticamente o che prenda i valori del campo "codice_P" presente nella tab1.
Così quando andrò nel form fatto in php appaia "codice_P" tipo menu a tendina dove posso scegliere il codice.

Come posso fare? che tipo di campo sono "codice_prodotto" e "codice_P"? enum?

Grazie mille spero di essere stato chiaro, saluti!
 
ciao
ti sposto in php perche quello che vuoi fare ha bisogno di php.
poi alla domanda sul tipo di campo:
enum non va bene serve solo per mettere dei valori fissi, essendo un codice secondo me dovrebbe andare bene varchar con lunghezza maggiore del codice più lungo
 
Grazie per la precisazione in mysql! ;) adesso allora attendo impaziente un aiutino sul php

ciao
ti sposto in php perche quello che vuoi fare ha bisogno di php.
poi alla domanda sul tipo di campo:
enum non va bene serve solo per mettere dei valori fissi, essendo un codice secondo me dovrebbe andare bene varchar con lunghezza maggiore del codice più lungo

Grazie per la precisazione in mysql! ;) adesso allora attendo impaziente un aiutino sul php ihihihi :fonzie:
 
ciao
per capirsi meglio
tu hai
1. una tabella tab1 in cui c'è il campo codice_P
2. una tabella tab2 in cui c'è il campo codice_prodotto

vorresti che quando riempi la tab1 in automatico il valore che dai al codice_prodotto si aggiungesse anche al
codice_P della tab2
giusto?
sarebbe bene che tu postassi il dump delle tabelle.
poi tu dici che con la tab2 vuoi fare il classico menù a tendina per selezionare il codice, ma a che ti serve allora la tab2?
il codice esiste di gia sulla tab1, non potresti usare quella?
 
ciao
per capirsi meglio
tu hai
1. una tabella tab1 in cui c'è il campo codice_P
2. una tabella tab2 in cui c'è il campo codice_prodotto

vorresti che quando riempi la tab1 in automatico il valore che dai al codice_prodotto si aggiungesse anche al
codice_P della tab2
giusto?
sarebbe bene che tu postassi il dump delle tabelle.
poi tu dici che con la tab2 vuoi fare il classico menù a tendina per selezionare il codice, ma a che ti serve allora la tab2?
il codice esiste di gia sulla tab1, non potresti usare quella?

Allora, grazie della risposta :)

Mi spiego meglio, sto creando 2 form uno serve ad inserire dei prodotti (nome prodotto, codice, descrizione e prezzo); e l'altro serve a creare delle offerte (data dell'offerta, cliente, prodotti offerti [qui ho bisogno di poter richiamare anche più prodotti inseriti precedentemente nell'altro form])

io per ora ho creato le 2 tabelle con i relativi campi e tramite un PDA ho creato i relativi form con tanto di pulsanti "invia". Ma devo modificare il campo "prodotti offerti" nel modo sopra descritto cioè poter richiamare in quel campo il codice dei prodotto senza inserirlo manualmente.

Grazie della pazienza! :)
 
ciao
ti schematizzo (se non ho capito male)
PHP:
<?php
//dati di connessione
$con = mysqli_connect('localhost', 'username', 'password', 'database');
$result = mysqli_query($con, "SELECT codice_P, articolo FROM tab1 ORDER BY codice_P";
?>
<form action="dove_devi_andare.php" method="post">
<!-- altri campi di input  che/se ti servono -->
<select name="codice">
<?php
  while ($riga = mysqli_fetch_assoc($result)) {
  	echo "<option value=\"$riga['codice_P']\">".$riga['codice_P'].": ".$riga['articolo']."</option>";
  }
?>
</select>
<!-- altri campi di input  che/se ti servono + pulsante di submit-->
</form>
nella pagina dove_devi_andare.php raccogli i vari $_POST li controlli/elabori e fai l'insert in tab2

se poi vuoi inviare più codici alla volta dai alla <select> l'attributo multiple="multiple"

p.s.
usa mysqli e non le vecchie istruzioni mysql
 
ciao
ti schematizzo (se non ho capito male)
PHP:
<?php
//dati di connessione
$con = mysqli_connect('localhost', 'username', 'password', 'database');
$result = mysqli_query($con, "SELECT codice_P, articolo FROM tab1 ORDER BY codice_P";
?>
<form action="dove_devi_andare.php" method="post">
<!-- altri campi di input  che/se ti servono -->
<select name="codice">
<?php
  while ($riga = mysqli_fetch_assoc($result)) {
  	echo "<option value=\"$riga['codice_P']\">".$riga['codice_P'].": ".$riga['articolo']."</option>";
  }
?>
</select>
<!-- altri campi di input  che/se ti servono + pulsante di submit-->
</form>
nella pagina dove_devi_andare.php raccogli i vari $_POST li controlli/elabori e fai l'insert in tab2

se poi vuoi inviare più codici alla volta dai alla <select> l'attributo multiple="multiple"

p.s.
usa mysqli e non le vecchie istruzioni mysql


Allora prima di tutto GRAZIE! poi vediamo se ho capito..

ho 2 form e nel secondo form dovrei aggiungere le istruzioni che mi hai detto giusto?:

PRIMO FORM per l'inserimento del prodotto
HTML:
<form action="ecc..">

<div class="control-group">
    <label class="control-label" for="nome">Nome Prodotto</label>
    <div class="controls">
	<input id="nome" name="nome"type="text" maxlength="30" class="required" value="" />
	</div></div>

	<div class="control-group">
    <label class="control-label" for="codice">Codice Prodotto</label>
    <div class="controls">
	<input id="codice" name="codice"type="text" maxlength="30" class="required" value="" />
	</div></div>

//altri campi e pulsante submit

</form>


SECONDO FORM per l'inserimento dell'offerta
PHP:
<? php
$con = mysqli_connect('localhost', 'username', 'password', 'database');
$result = mysqli_query($con, "SELECT codice_P, articolo FROM tab1 ORDER BY codice_P"; <---cosa intendi per "articolo"?
?>
<select name="codice">
<?php
  while ($riga = mysqli_fetch_assoc($result)) {
  	echo "<option value=\"$riga['codice_P']\">".$riga['codice_P'].": ".$riga['articolo']."</option>";
  }
?>
</select>
<form action="ecc..">

	<div class="control-group">
    <label class="control-label" for="cliente">Cliente</label>
    <div class="controls">
	<input id="cliente" name="cliente"type="text" maxlength="50" class="required" value="" />
	</div></div>

	<div class="control-group">
    <label class="control-label" for="codice_pro">Codice Prodotto Offerto</label>
    <div class="controls">
	<input id="codice_pro" name="codice_pro"type="text" maxlength="50" class="required" value="" />
	</div></div>	

 //altri campi e pulsante submit

</form>

giusto così?

Io ho anche creato le rispettive 2 tabelle in mysql tramite phpmyadmin (tab1: id, nome,codice) (tab2: id, cliente, codice_pro)

Ora ho bisogno anche di creare nel secondo form due caratteristiche per l'inserimento del "codice prodotto offerto", ossia avere la possibilità di scegliere il valore da dati già esistenti cioè non devo inserirli manualmente ma mi devono uscire dei dati già presenti riachiamati dalla tab1 in precisione dal campo "codice"; così da aggiornare la tab2 e ritrovarmi i dati della tab1 "codice", praticamente i due campi "codice" dovrebbero essere aggiornati tra loro.

Fatto ciò avrei bisogno anche di poter aggiungere più di un campo codice tramite un pulsante o qualsiasi altro modo, così da avere il campo "codice" ma la possibilità di aggiungere il campo "codice2", "codice3" e così via sempre richiamandolo dalla tab1.

grazie, spero di non essere stato contorto!
saluti
 
Ultima modifica di un moderatore:
ciao
ad una prima occhiata secondo form no
la <select name="codice">..... </select>
deve essere dentro il form, altrimenti come fai a trasmetterla.
poi darò un occhiata meglio, ma devi avere pazienza sono giornate un po' incasinate
 
Allora, grazie della risposta :)

Mi spiego meglio, sto creando 2 form uno serve ad inserire dei prodotti (nome prodotto, codice, descrizione e prezzo); e l'altro serve a creare delle offerte (data dell'offerta, cliente, prodotti offerti [qui ho bisogno di poter richiamare anche più prodotti inseriti precedentemente nell'altro form])

io per ora ho creato le 2 tabelle con i relativi campi e tramite un PDA ho creato i relativi form con tanto di pulsanti "invia". Ma devo modificare il campo "prodotti offerti" nel modo sopra descritto cioè poter richiamare in quel campo il codice dei prodotto senza inserirlo manualmente.

Grazie della pazienza! :)

Qualcuno sa qualcosa di nuovo? grazie! ma sono disperato!
 

Discussioni simili