[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.203
207
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.203
207
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
G [PHP] Creare script di prenotazione con controllo disponibilità. PHP 7
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
F Cerco Hosting con VECCHIE versioni di php Hosting 0
Cosina Captcha php PHP 1
S passare un valore da un form a un file .php con metodo post PHP 4
N php msyql PHP 6
N php problemi a visualizzare video PHP 3
A menu a tendina php PHP 1
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
F Php date_diff PHP 1
K [PHP] Aggiungere caratteri ad una stringa in base alla lunghezza della stessa PHP 2
C Wp-admin a file php WordPress 5
Lino80 [Retribuito] Cerco programmatore php per modifica/inserimento funzione/valori da un plugin importer wordpress Offerte e Richieste di Lavoro e/o Collaborazione 0
csi Inviare file jpg in locale alla stampante con php PHP 0

Discussioni simili