Visualizzazione dei risultati da 1 a 5 su 5

Discussione: mysql inserimento

  1. #1

    mysql inserimento

    provo a chiedere senza postare il codice.
    inserimento dati da php a mysql

    vorrei che una volta inseriti i valori nel database , la stessa stringa non si ripeti

    es: fornitori, clienti, ordini
    5 3 2

    questa sequenza non si ripeti.
    chi mi aiuta? grazie , in anticipo!

  2. #2
    come si fa a postare un pezzo di codice?

  3. #3
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Puoi fare in due modi, con sql o con php:
    Con sql aggiungi un indice univoco che comprende i 3 campi, es:
    codice:
    CREATE TABLE miatabella(
       id int(11) NOT NULL AUTO_INCREMENT,
       fornitori int(11),
       clienti int(11),
       ordini int(11),
       ...
       PRIMANY KEY (id),
       UNIQUE mioindice(fornitori, clienti, ordini)
    );
    
    // puoi creare l'indice anche da phpmyadmin
    Oppure con PHP, basta che fai una select per cercare se c'è un record con quei tre valori. Se trovi un record impedisci di fare l'inseriemento

  4. #4
    in effetti avevo bisogno di una selezione , in p h p, in cui possono esserci al massimo 2 di quei numeri uguali non 3.
    provo a riportare un esempio di codice inserendo degli spazi per permettere la pubblicazione
    // k s= chiave secondaria
    $i n s=" i n s e r t i n t o gestione(k s _ f o r n i t o r e , k s _ c l i e n t e , k s _ o r d ine)s e l e c t id _f o r n i t o r e , i d _ c l i e n t e , i d _ o r d ine
    from f o r n i t o r i , c l i e n t i, o r d ini w h e r e n o m e _f o r n i t ore= '$f o r n' and n o m e _c l i e n t e= '$cl i e '";
    $q u e r y=m y s q l_ qu e r y($i n s);
    vorrei che una volta inseriti i valori nel database , la stessa stringa non si ripeti
    es: fornitori, clienti, ordini
    20 15 11

    20 15 13
    20 15 8
    questa sequenza dei 3 numeri non si ripeti, max 2 .
    chi mi aiuta? grazie , in anticipo!

  5. #5
    la query da eseguire è questa:
    s e l e c t count ( * ) from tabella where fornitori=20 and clienti=15 and ordini=11

    poi la esegui con m y s q l _ q u e r y(), recuperi il risultato (ad esempio con m y s q l _ r e s u l t):

    $ numero_inserimenti = m y s q l _ r e s u l t ( $ r e s u l t , 0 , 0 );

    e a quel punto in base a quello che hai su numero_inserimenti (maggiore di due) decidi di proseguire o generare un errore.
    Pensate i programmi a librerie, e innalzate il livello d'astrazione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.