Che caratteristiche deve avere un gruppo di pulsanti di scelta in phpMyAdmin?

  • Creatore Discussione Creatore Discussione Darkan85
  • Data di inizio Data di inizio

Darkan85

Nuovo Utente
28 Giu 2012
18
0
0
Salve,
devo creare un gruppo di pulsanti di scelta in phpMyAdmin. Un semplice: Acconsento o Non acconsento.

Solo che sono in dubbio sulle caratteristiche da mettere.
Per esempio, so che la casella di controllo deve generalmente essere di TIPO binary, Lunghezza 1 e predefinito NULL, col NULL selezionato.

Ma un gruppo di due pulsanti di scelta?
Grazie mille a chi risponderà il più dettagliatamente possibile.
 
un semplice si o no?
io preferisco un bel int lunghezza 1, predefinito 0, dove imposterò 0 per no e 1 per si
ma a volte uso anche enum('si','no') predefinito no, dipende come mi sveglio la mattina
sinceramente non saprei cosa è meglio
 
ok, ma scusa l'ignoranza, sono agli inizi e sto cercando di capire oltre che imparare.

Come definisco si e no o 0=no e 1=si? A seconda del metodo che scelgo.
 
Cioè, ti spiego meglio. E' la prima volta che mi trovo a creare un gruppo di scelta. All'inizio avevo pensato a due caselle di controllo ma poi mi sono reso conto che non era la scelta giusta poiché potevano essere selezionate entrambe... :book::book:

Ora sono entrato in phpMyAdmin e ho eliminato una casella di controllo. E vorrei modificare l'altra per renderla gruppo di scelta.

Solo che non avendone mai fatte, chiedo per sicurezza.

Io mi trovo con queste cose:

Campo: dove ci va il nome
Tipo:
Lunghezza/Set.:
Predefinito:
Collation:
Attributi:
Null:
Auto:increment:

Come è meglio compilarlo nel mio caso secondo te?
Le cose da definire, vanno definite nel codice del form? E se si...come?

Grazie mille.
 
form
HTML:
<input type="radio" name="privacy" value="0"/> non accetto &nbsp;
<input type="radio" name="privacy" value="1"/> accetto
query
Codice:
UPDATE tabella SET privacy = $_POST['privacy'];
tipo INT
lunghezza 1
predefinito come definito 0
auto inc no
form
HTML:
<input type="radio" name="privacy" value="no"/> non accetto &nbsp;
<input type="radio" name="privacy" value="si"/> accetto
query
Codice:
UPDATE tabella SET privacy = " $_POST['privacy'] ";
tipo ENUM
lunghezza 'si','no'
predefinito come definito no
auto inc no

non so se sono eiuscito a comprendere la tua richiesta :-)
 
Come mai quando vado a registrare un utente, mi appare questo messaggio però?

Unknown column 'non_acconsento' in 'field list'
 
Sono andato a togliere non_acconsento da quest parte di php

PHP:
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "modulo")) {
  $insertSQL = sprintf("INSERT INTO clienti (nome, cognome, data_di_nascita, username, password, email, indirizzo, citta, provincia, cap, livello_utente, autorizzo, acconsento) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
                       GetSQLValueString($_POST['nome'], "text"),
                       GetSQLValueString($_POST['cognome'], "text"),
                       GetSQLValueString($_POST['data_di_nascita'], "text"),
                       GetSQLValueString($_POST['username'], "text"),
                       GetSQLValueString($_POST['password'], "text"),
                       GetSQLValueString($_POST['email'], "text"),
                       GetSQLValueString($_POST['indirizzo'], "text"),
                       GetSQLValueString($_POST['citta'], "text"),
                       GetSQLValueString($_POST['provincia'], "text"),
                       GetSQLValueString($_POST['cap'], "int"),
                       GetSQLValueString($_POST['livello_utente'], "text"),
                       GetSQLValueString(isset($_POST['autorizzo']) ? "true" : "", "defined","'Y'","'N'"),
                       GetSQLValueString(isset($_POST['acconsento']) ? "true" : "", "defined","'Y'","'N'"));

Ma ora mi dà questo errore:

Query was empty

Forse ho sbagliato dove fare la query? Io l'ho fatta stando sul database. Dovevo farla stando dentro alla tabella "clienti" (nel mio caso si chiama così)?
 
Darkan85 ha scritto:
Come mai quando vado a registrare un utente, mi appare questo messaggio però?
Unknown column 'non_acconsento' in 'field list'
vuol dire che il campo nella tabella non si chiama non_acconsento
 
mmm
non conosco questa sintassi
che funzione è GetSQLValueString?
fa parte di qualche classe?
 
Ok, sembra che abbia risolto. Scrivo cos'ho fatto, magari sarà utile a qualcun'altro.

Innanzi tutto c'era un %s da togliere.

Poi dove diceva:
PHP:
GetSQLValueString(isset($_POST['acconsento']) ? "true" : "", "defined","'Y'","'N'"));
dovevo sostituire Y con 1 e N con 0.

Ho rifatto la query. E ora tutto va.

Ringrazio tanto Criric. Sei stato molto gentile!

Se poi hai voglia di consigliarmi una guida su come impararmi bene l'uso delle query, ti sarò ancora più grato. Altrimenti ci si vede sul forum che tanto avrò altro da chiedere (e spero da rispondere in futuro). E grazie ancora! :mavieni::mavieni:
 

Discussioni simili