[PHP] Controllo su quantita' di caratteri inseriti, in colonna db

giancadeejay

Utente Attivo
26 Ott 2010
224
0
16
torino
Ciao a tutti,
volevo sapere come impostare un controllo su una colonna del mio db.
I caratteri dei record di questa colonna hanno tutti 8 caratteri tranne alcuni e volevo inserire a questi ultimi ($dato9),2 zeri iniziali.
Ecco il mio script:
Codice:
$dato50 = mysql_real_escape_string($_POST['dato50']);
$dato9 = mysql_real_escape_string($_POST['dato9']);
                    
                    if($dato50 == "" || $dato9 == ""){
                    
                        echo "<h1><font color='white'>ATTENZIONE , DEVI COMPILARE TUTTI I CAMPI !</font></h1>";
                              header("Refresh: 4; URL= http://miosito.org/registrazione_utenti/box/index.php");
} else {

$dato50 = $_POST["dato50"];
$dato9 = $_POST["dato9"];
 $sql="UPDATE completo SET DATO50 = '$dato50' WHERE DATO9 = '$dato9'";
 $exec = mysqli_query($con, $sql) or die(mysqli_error());
echo "<h1>DATO INSERITO CORRETTAMENTE</h1><img src='immagini/spuntaverde.png'>";

}
mysqli_close($con)

Potete aiutarmi?
 

marino51

Utente Attivo
28 Feb 2013
3.016
174
63
Lombardia
quello che stai cercando di fare è valido solo se la colonna è definita "stringa" nel db
se fosse definita "numerica" cambia pensiero, non otterrai il risultato

in ogni caso ciò che stai cercando di ottenere ("stringa" !) lo puoi avere con una semplice query

per avere la lista
PHP:
SELECT RIGHT(CONCAT('00000000', dato9), 8) AS dato9 FROM completo WHERE LENGTH(dato9)<8 AND dato9 IS NOT NULL

per applicare la variazione
PHP:
UPDATE completo SET dato9 = RIGHT(CONCAT('00000000', dato9), 8) WHERE LENGTH(dato9)<8 AND dato9 IS NOT NULL

per vedere come trattare le "stringhe" di caratteri
http://dev.mysql.com/doc/refman/5.7/en/string-functions.html
 

giancadeejay

Utente Attivo
26 Ott 2010
224
0
16
torino
Grazie Marino51...ho controllato la definizione.. va bene ma come lo inserisco nel mio script?
In pratica..se nel form che l'utente compila..non inserisce 8 caratteri io gli aggiungo ,con lo script,i due zero iniziali ai 6 che inserisce lui
 
Ultima modifica:

giancadeejay

Utente Attivo
26 Ott 2010
224
0
16
torino
quello che stai cercando di fare è valido solo se la colonna è definita "stringa" nel db
se fosse definita "numerica" cambia pensiero, non otterrai il risultato

in ogni caso ciò che stai cercando di ottenere ("stringa" !) lo puoi avere con una semplice query

per avere la lista
PHP:
SELECT RIGHT(CONCAT('00000000', dato9), 8) AS dato9 FROM completo WHERE LENGTH(dato9)<8 AND dato9 IS NOT NULL

per applicare la variazione
PHP:
UPDATE completo SET dato9 = RIGHT(CONCAT('00000000', dato9), 8) WHERE LENGTH(dato9)<8 AND dato9 IS NOT NULL

per vedere come trattare le "stringhe" di caratteri
http://dev.mysql.com/doc/refman/5.7/en/string-functions.html
cosi ho risolta in db..dove trova solo 6 caratteri mi aggiunge i due zeri come volevo:
Codice:
$con = mysqli_connect("localhost","db","", "my_db");
if (!$con)
  {
  die('Could not connect: ' . mysqli_error());
  }
   
   (" UPDATE completo SET DATO9 = RIGHT(CONCAT('00000000', DATO9), 8) WHERE LENGTH(DATO9)<8 AND DATO9 IS NOT NULL ");

mysqli_close($con)

ma volevo un controllo php nel mio script sopra che verificasse:
se l'utente non inserisce otto caratteri restituisci errore..tutto qui..
 

marino51

Utente Attivo
28 Feb 2013
3.016
174
63
Lombardia
volevo sapere come impostare un controllo su una colonna del mio db
ho capito che dovevi fare un controllo su una colonna del db ....

In pratica..se nel form che l'utente compila..non inserisce 8 caratteri
in realtà devi controllare il valore inserito da un utente e che ricevi da un form ....

poi ho capito che il valore da controllare è "dato9" ma nello script scrivi il contrario, invertendo con "dato50" ....

PHP:
$dato50 = $_POST["dato50"];
$dato9 = substr("00000000".$_POST["dato9"], -8);
$sql="UPDATE completo SET DATO9 = '$dato9' WHERE DATO50 = '$dato50'";

risultato
PHP:
abcdef
50
UPDATE completo SET DATO9 = '00abcdef' WHERE DATO50 = '50'

bisogna solo ... comprendersi
 
Discussioni simili
Autore Titolo Forum Risposte Data
C [PHP] Controllo <select> comportamento anomalo PHP 2
A [PHP] Controllo nome utente form di registrazione PHP 4
L [PHP] controllo dimensione immagine per il resize PHP 2
P [PHP] Controllo al checkbox privacy PHP 6
T [php] controllo su estensione file PHP 7
M [PHP] Script per controllo disponibilitá negozio in citta PHP 4
F Controllo dati sui campi di input tramite php PHP 1
M [PHP] Dubbio controllo IF PHP 15
M [PHP] Controllo campo cap con trattino oltre ai numeri PHP 3
Fede72 Controllo registrazioni PHP Mysql PHP 5
bubino8 [PHP] Controllo Log e Modifiche Utenti PHP 5
P [PHP] Realizzare un controllo accessi cantiere, problema lettore Qrcode... PHP 0
M [PHP] Controllo inserimento in tempo reale PHP 0
M [PHP] Help: controllo valori inseriti in un campo PHP 1
M [PHP] Impedire di digitare determinati caratteri nell’input (controllo in tempo reale) PHP 4
giancadeejay [PHP] Controllo inserimento tot caratteri PHP 5
CristianB72 [PHP] Controllo sintassi indirizzo email non funziona PHP 13
M [PHP] controllo inserimento dati un un form PHP 4
ANDREA20 [PHP] Controllo email se e valida PHP 5
P controllo browser sul server o in php? PHP 2
F controllo form php con restituzione errori nella form PHP 10
B Problemi con pannello di controllo PHP PHP 0
B Problemi con pannello di controllo PHP PHP 0
L [php] upload controllo dimensione immagine PHP 8
Z Controllo campi di un form php PHP 5
X Eseguire controllo su variabili php PHP 1
P Controllo php su checkbox PHP 2
X controllo e scrittura su db mysql con pagine php PHP 4
P controllo dati form con jquery e php PHP 8
L [PHP e FTP upload] controllo file allegato PHP 6
L [PHP] Sapere se si lavora in locale o remoto (Controllo server Database) PHP 1
max_400 Messenger HTML - PHP - Controllo script PHP 29
A Sicurezza e controllo password in PHP PHP 4
X Controllo versione minima PHP PHP 1
E campo controllo in formail php PHP 1
G Script php per invio email con controllo sintassi e record MX PHP 0
G Script php per invio email con controllo sintassi e record MX PHP 7
T fatture con voci fattura in php PHP 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
M Collegamento tra form html e script php PHP 4
M Problemi con la stampa dei valori in php PHP 1
W [Cerco collaborazioni] Sviluppatore Web (PHP) Offerte e Richieste di Lavoro e/o Collaborazione 0
D passare valori da database sql a php PHP 1
L Ricezione dei dati su file php da modulo html PHP 6
E Inviare variabile a PHP da ciclo in JS Javascript 0
A form PHP prenotazione tramite query PHP 2
A Form php prenotazione di un azienda sanitaria locale presso studio medico PHP 1
F menù select dinamico da db in php PHP 3
L Problemi form Pagina php HTML e CSS 3
L php mysql non salva solo id PHP 21

Discussioni simili