Gestione uscita prodotti.

bitox

Nuovo Utente
11 Dic 2012
20
0
0
Salve io ho un problema su cui mi sono arenato.
allora io sto costruendo un gestionale per un mercatino del libro usato.
Voglio ottenere un risultato inviando una query a mysql, dove inserendo un array di prodotti, mi restituisce quelli che sono presenti nel mio magazzino.

la query è questa:
codice:
Codice:
SELECT * FROM magazzino WHERE id_libro IN ( 2, 5, 8 )


ora quando faccio la query funziona ma mi restituisce tutte le occorrenze di id_libro, esiste un modo che mi permetta di ottenere solo un'occorrenza per ogni id_libro? fatemi sapere!
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
da quello che ho capito tu hai diversi record in cui o presente più volte nel campo id_libro lo stesso valore, giusto?
prova così
SELECT DISTINCT * FROM magazzino WHERE id_libro IN ( 2, 5, 8 )
o
SELECT * FROM magazzino WHERE id_libro IN ( 2, 5, 8 ) GROUP id_libro
al massimo non funzia
 

HolidaySoft.it

Utente Attivo
16 Ott 2012
105
0
0
Milano
www.holidaysoft.it
ciao
da quello che ho capito tu hai diversi record in cui o presente più volte nel campo id_libro lo stesso valore, giusto?
prova così
SELECT DISTINCT * FROM magazzino WHERE id_libro IN ( 2, 5, 8 )
o
SELECT * FROM magazzino WHERE id_libro IN ( 2, 5, 8 ) GROUP id_libro
al massimo non funzia

Ciao,
in questo modo estrai per ogni id_libro, il numero di records presenti nella tabella magazzino:

SELECT id_libro, count(*) FROM magazzino WHERE id_libro IN ( 2, 5, 8 ) GROUP id_libro

Ciao
Mik


A quick solution is a shortcut to troubleshooting
HolidaySoft.it - Gestionali, Database, SitiWeb
GarganoSapori.it - Olio ExtraVergine del Gargano
OsteriaORistorante.it - Crea la Vetrina per il tuo Ristorante!
 

bitox

Nuovo Utente
11 Dic 2012
20
0
0

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
scusa una domanda, prendo ad es un solo id_libro, se hai tre libi con id_libro = 2 nella tabella hai tre record?
es.
id_libro | titolo
2 | ventimila leghe sotto i mari
2 | ventimila leghe sotto i mari
2 | ventimila leghe sotto i mari
per cui usi quella query per sapere quanti libri con id_libro=2 hai in magazzino?
se è così a me sembra una tabella molto ridondante e non semplice da gestire
se non è così come non detto
 

bitox

Nuovo Utente
11 Dic 2012
20
0
0
in pratica devo compilare un ordine di uscita dei libri dal magazzino che ha suo interno può contenere più occorrenze di un libro con lo stesso id quindi.
La mia idea iniziale era di farmi restituire un solo id ingnorando quelli doppi, ma ora questa cosa non mi serve più in quanto quando il libro esce dal mio magazzino io devo accertarne le condizione e quindi definirlo "vendibile" allora mi conviene avere a disposizione tutti i record che mi restituisce la query
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
se fai una tabella del genere la gestione diventa molto semplice
Codice:
CREATE TABLE `magazzino` (
`id_libro VARCHAR( 25 ) NOT NULL ,
`titolo` VARCHAR( 100 ) NULL ,
`a_magazzino` INT( 9 ) NOT NULL DEFAULT '0',
`in_vendita` INT( 9 ) NOT NULL DEFAULT '0',
PRIMARY KEY ( `id_libro` )
) ENGINE = MYISAM ;
se poi ti interessa puoi aggiungere altri campi descrittivi e i campi data dei movimenti inserimento a magazzino, messi in vendita, venduto.
su una tabella del tipo puoi poi fare tutte le interrogazioni/modifiche/eliminazioni che vuoi
es per uno spotamento a vendita
PHP:
<?php
//dati di connessione
//tralascio le verifiche del caso es se a mag 0 non si puo spostare
if(isset($_POST['scarica'])){
	$id_libro=$_POST['id_libro'];
	$quanti=$_POST['quanti'];
	$query=mysql_query("UPDATE magazzino SET a_magazzino=a_magazzino-$quanti,in_vendita=in_vendita+$quanti WHERE id_libro='$id_libro'");
}
?>
sposta a vendita<br />
<form action="#" method="post">
<select name="id_libro">
<?php
$query=mysql_query("SELECT * FROM magazzino ORDER BY id_libro");
  while($riga=mysql_fetch_array($query){
  echo "<option value=\"".$riga['id_libro']."\">".$riga['id_libro']."</option>";
  }
?>
</select>
quanti: <input name="quanti" type="text" value="0" size="3"><br />
scarica
<input type="submit" name="scarica" value="scarica">
</form>
con una tabella simile, come detto, puoi fare tutte le interrogazioni che vuoi, se ad esempio il libro esce da in_vendita (venduto) uppi in meno la vendita e puoi fare un nuovo carico se la vendita è 0 o minore di un certo numero.

comunque ricordati di una cosa: non so se la tabella può fare per te, ma quando si fa un gestionale lo studio delle tabelle è tra le cose principali (anche perchè l'appetito vien mangiando e correggere poi è più complicato)
 

bitox

Nuovo Utente
11 Dic 2012
20
0
0
@Borgo ci possiamo sentire in MP o su skype addirittura! mi hai dato uno spunto al quale non avevo pensato, il mio problema e che io devo anche tracciare la provenienza del libro. Dici che mi basterebbe mettere in questa tabella anche chi lo ha venduto e chi lo ha acquistato?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
no non do consulenze private, ma anche se un po' più lungo, proseguiamo qui, o meglio per facilitare la lettura puoi aprire un altro 3d specifico.
comunque per fare un discorso del genere devi postare
1) quali sono esattamente le operazioni che devi fare
es. carico a magazzino-> carico a vendita -> venduto
2) quali sono i dati che ti servono
es dati sul libro, dati sul venditore, dati sull'acquirente (ragione sociale di chi te lo vende o l'acquista?)
tutto qusto per rendere le tabelli non ridondanti, probabilmente ti servono più tabelle.
a titolo di esempio:
tabella movimenti (quale libro, tipo di movimento, data....)
tabella scheda_libro (titolo, autore, casa editrice, prezzo...)
tabella ragione_sociale (da chi acquisti e a chi vendi: nome, pIVA, indirizzo, tel...)
poi con varie join tiri fuori tutto quello che vuoi

la mia esperienza passata mi ha insegnato che un'ora spesa a ragionare con carta e matita (o qui su mrwm) fa guadagnare ore di lavoro in programmazione
quindi posta qello che devi fare e cosa ti serve che proviamo a buttare giu qualcosa
 
Discussioni simili
Autore Titolo Forum Risposte Data
A Gestione array multidimensionale PHP 6
andreas88 Gestione Profilo OnlyFans Leggi, Normative e Fisco 0
A Creazione cookie e gestione accessi PHP 0
B form gestione input PHP 2
sbolde91 Consiglio gestione Hosting Hosting 2
E Gestione profilo utente tramite Form PHP 3
S cerco esperto gestione ecommerce Offerte e Richieste di Lavoro e/o Collaborazione 0
P Curiosità su grandi aziende e la gestione delle grafiche. Discussioni Varie 1
M Consiglio sulla gestione di Gerarchie Database 0
A attributo "min" per input gestione date PHP 8
L Gestione DB ASP.NET 2
L Consiglio SEO gestione dominio + free hosting SEO e Posizionamento 6
avalon95 [WordPress] Gestione database annunci WordPress 0
G [PHP] gestione mouse PHP 2
B Gestione Prenotazioni con Mysql Database 21
D CREAZIONE E GESTIONE SITO E-COMMERCE Offerte e Richieste di Lavoro e/o Collaborazione 2
P (Cerco) Collaboratori per gestione social media Offerte e Richieste di Lavoro e/o Collaborazione 5
psicomia Gestione funzione in javascript in tabella richiamare"textarea" valori preimpostati in "select" Javascript 2
brasoft2019 [PHP] Sistema di gestione presenze PHP 29
W Preventivo gestione ecommerce Discussioni Varie 1
E Cerco partner / socio per gestione sito di annunci incontri Offerte e Richieste di Lavoro e/o Collaborazione 0
K e-commerce per distribuzione e dettaglio con gestione magazzino E-Commerce 0
G [MS Access] Gestione biglietti [RISOLTO] MS Access 2
Jonn [WordPress] Gestione categorie e tags per sito eventi WordPress 2
felino Gestione dispositivi e Altri dispositivi Windows e Software 4
D Software per gestione account facebook? Social Media Marketing 1
D Cero Software Facebook gestione account Vendere e Acquistare pubblicita' online 0
M Offro servizio Incremento Follower e Gestione Profili Istagram Offerte e Richieste di Lavoro e/o Collaborazione 0
S elementi statistici - Matrice e Gestione Array PHP o Javascript Javascript 0
J [offro] hosting / installazione certificati ssl / gestione server Offerte e Richieste di Lavoro e/o Collaborazione 0
F [PHP] gestione meteo manuale per un gioco di ruolo PHP 1
bianca_dimulescu Gestione tabella e MySQL PHP 4
T Servizio gestione pagina Instagram Offerte e Richieste di Lavoro e/o Collaborazione 0
G Gestione e/o vendita hosting come libero professionista Leggi, Normative e Fisco 4
MatMac System [PHP] Gestione dinamica select-option PHP 3
xone [Vendo] Script gestionale php-mysql gestione pratiche Altri Annunci 0
S [PHP] Gestione coupon PHP 3
lxella [PHP] Aree riservate e gestione utenti PHP 1
D Gestione punteggi php PHP 1
B Cercasi socio per gestione sito web Offerte e Richieste di Lavoro e/o Collaborazione 0
G gestione pagina facebook Social Media Marketing 0
Cavalinho08 [Offro gestione pagine instagram, prezzo bassissimo] Annunci servizi di Social Media Marketing 3
D [VENDO] Gestione account instagram Annunci servizi di Social Media Marketing 2
N [VENDO] Gestione pagine FB Annunci servizi di Social Media Marketing 2
ientii [PHP] Gestione CheckBox PHP 1
W Consiglio su gestione di un form con XMLHttpRequest Ajax 0
booklisa Compressione immagini e gestione media CMS (Content Management System) 1
T gestione livelli sessioni php msqli PHP 1
giuseppe_123 [PHP] Gestione corsi PHP 1
A [WordPress] Plugin gestione ordine prodotto. WordPress 0

Discussioni simili