• Home
  • Forum
  • Fare Web
  • PHP

Inserimento dati in colonna mysql

  • Creatore Discussione Creatore Discussione SardaFilm
  • Data di inizio Data di inizio 19 Lug 2014
S

SardaFilm

Nuovo Utente
19 Lug 2014
8
0
0
  • 19 Lug 2014
  • #1
Buonasera, stasera ho avuto un problema insolito con l'inserimento dei dati in una colonna.

Praticamente ho creato 3 colonne

Tiny (in cui ci vanno i dati della textarea
Photo (il nome dell'immagine caricata)
Titolo (e qui il sorge il problema)


Prima di creare la colonna "Titolo" il tutto funzionava, i dati degli altri due input venivano caricati nelle colonne però dopo la creazione dell'ultima colonna titolo non ha più funzionato.

Cosa c'è che non va? Vi lascio il codice che uso per inserire i dati nel db.

PHP:
<div id="main">
    <h2>Posta un nuovo film o una serie</h2>
    <p>
    <form enctype="multipart/form-data" action="amministrazione.php" method="POST"> 
    <input type="text" id="titolo" name="titolo" value="Inserisci il titolo">
    <textarea id="name" name="tiny" rows="15" cols="80"></textarea><br> 
    <label for="photo">Copertina DVD | Serie  </label>
    &nbsp;&nbsp;&nbsp;<input type="file" name="photo" required><br><br> 
 <input type="submit" value="Crea"> 
 <?php 

 //This is the directory where images will be saved 
 if (!empty($_FILES['photo']['name'])) { 

  
 $target = "../image/"; 
 $target = $target . basename( $_FILES['photo']['name']); 

 //This gets all the other information from the form 

 $tiny = @$_POST['tiny'];
 $titolo = @$_POST['titolo'];
 $pic= $_FILES['photo']['name']; 


 mysql_query("INSERT INTO employees VALUES ('$tiny', '$pic', '$titolo')") ; 

 //Writes the photo to the server 
 if(move_uploaded_file($_FILES['photo']['tmp_name'], $target)) 
 { 

 //Tells you if its all ok 
 echo "Il file ". basename(isset($_FILES['uploadedfile']['name'])). " è stato caricato con successo"; 
 } 
 else { 

 //Gives and error if its not 
 echo "Ci sono problemi con il caricamento del file."; 
 } 
}
 ?> 
 </form>

    </p>
    </div>

Gradirei aiuto :byebye:

P.S. Se vi serve guardare come imposto la colonna: Titolo VARCHAR (30) NULL 0
 
N

Night Assassin

Utente Attivo
16 Mar 2013
200
0
0
  • 20 Lug 2014
  • #2
Alla fine della query metti prima del ;
or die (mysql_error());
Lancia la pagina e guarda cosa stampa

Inviato con Tapatalk Free da Android
 
S

SardaFilm

Nuovo Utente
19 Lug 2014
8
0
0
  • 20 Lug 2014
  • #3
Ciao, grazie per la risposta.

Ho già risolto poco più tardi che ho pubblicato questa discussione, praticamente sbagliavo l'ordine delle tabelle e siccome avevano impostazioni diverse mysql dava errori. Ho riscritto la query (dopo un po' di tentativi :jolly e ha funzionato.

Grazie ancora, buona giornata.
 

marino51

Utente Attivo
28 Feb 2013
3.205
207
63
Lombardia
  • 20 Lug 2014
  • #4
due cose,

1) visto che hai campi limitati ( Titolo VARCHAR (30) ), non è male mettere il limite sull'input
HTML:
<input type="text" id="titolo" name="titolo" value="Inserisci il titolo" maxlength="30">
o controllarne la lunghezza, ti proteggi per future dimenticanze ....

2) inserisci i valori nel db indipendentemente dal "buon fine del file"
PHP:
mysql_query("INSERT INTO employees VALUES ('$tiny', '$pic', '$titolo')") ;  

 //Writes the photo to the server  
 if(move_uploaded_file($_FILES['photo']['tmp_name'], $target))
rischiando di avere orfani nel db

certo tutto dipende dal grado di affidabilità che deve avere la tua applicazione ....

per quanto riguarda il problema non è dato vedere dal codice un errore, se non derivante dalla lunghezza del campo
vale il suggerimento già postato

ciao
Marino
 
Ultima modifica: 20 Lug 2014
S

SardaFilm

Nuovo Utente
19 Lug 2014
8
0
0
  • 20 Lug 2014
  • #5
Ciao grazie per la risposta, il problema ora si è spostato su la textarea. Ho aggiunto ciò che c'era da aggiungere però ora se il testo è troppo lungo (nella textarea) il contenuto non viene pubblicato né nella index né nel database.. Qualche suggerimento?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 21 Lug 2014
  • #6
ciao
due piccole osservazioni:
- quando fai caricare dei file è indispensabile verificarne il tipo, qualcuno potrebbe caricarti cancella_tutto.exe (sarebbe opportuna anche la grandezza px e kb)
- non è il metodo migliore per non avere record orfani, se poi non carica, ma hai il record se es devi fare una fotogallery ti viene la fastidiosa x
PHP:
<?php
//............ 
if(move_uploaded_file($_FILES['photo']['tmp_name'], $target)){ 
	mysql_query("INSERT INTO employees VALUES ('$tiny', '$pic', '$titolo')");
	echo "Il file ". basename(isset($_FILES['uploadedfile']['name'])). " è stato caricato con successo"; 
}else{
	//...ecc
?>
ultimo
abbandona le vecchie istruzioni mysql e passa alle mysqli o alla classe pdo
 
S

SardaFilm

Nuovo Utente
19 Lug 2014
8
0
0
  • 21 Lug 2014
  • #7
borgo italia ha scritto:
ciao
due piccole osservazioni:
- quando fai caricare dei file è indispensabile verificarne il tipo, qualcuno potrebbe caricarti cancella_tutto.exe (sarebbe opportuna anche la grandezza px e kb)
- non è il metodo migliore per non avere record orfani, se poi non carica, ma hai il record se es devi fare una fotogallery ti viene la fastidiosa x
PHP:
<?php
//............ 
if(move_uploaded_file($_FILES['photo']['tmp_name'], $target)){ 
	mysql_query("INSERT INTO employees VALUES ('$tiny', '$pic', '$titolo')");
	echo "Il file ". basename(isset($_FILES['uploadedfile']['name'])). " è stato caricato con successo"; 
}else{
	//...ecc
?>
ultimo
abbandona le vecchie istruzioni mysql e passa alle mysqli o alla classe pdo
Clicca per allargare...

Ciao grazie per la risposta, ho già provato con mysqli ma dandomi troppi problemi son tornato alle vecchie "maniere". Comunque nel database come hai visto non salvo la foto in se ma semplicemente il nome quindi non ho pericolo, però seguirò il tuo consiglio e metterò un qualcosa per verificare il tipo di file.

Però mi resta sempre il problema della textarea che mi sta mandando in panico.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 21 Lug 2014
  • #8
ciao
considera che tra un po' le msql spariscono, anzi su qualche host stanno gia dando errore, quindi corri il rischio di dover rifare tutto.
guarda che il pericolo c'è, se estrai il nome della foto e poi fai (shematizzo)
PHP:
<img src="<?php echo $riga['nome_file'];?>">
e il file non esiste la classica X non te la toglie nessuno
dimenticavo:
salvo che prima tu non verifichi che il file esista, ma mi sembra un istruzione inutile in più
dimenticavo ancora: togli i silent, @, gli errori si devono eliminare non nascondere
 
Ultima modifica: 21 Lug 2014
S

SardaFilm

Nuovo Utente
19 Lug 2014
8
0
0
  • 21 Lug 2014
  • #9
borgo italia ha scritto:
ciao
considera che tra un po' le msql spariscono, anzi su qualche host stanno gia dando errore, quindi corri il rischio di dover rifare tutto.
guarda che il pericolo c'è, se estrai il nome della foto e poi fai (shematizzo)
PHP:
<img src="<?php echo $riga['nome_file'];?>">
e il file non esiste la classica X non te la toglie nessuno
dimenticavo:
salvo che prima tu non verifichi che il file esista, ma mi sembra un istruzione inutile in più
dimenticavo ancora: togli i silent, @, gli errori si devono eliminare non nascondere
Clicca per allargare...

Ho chiesto per aiutarmi in quella notice ma non succede mai niente e per me ora va bene così. Più che altro ho bisogno di risolvere il fatto di questa textarea maledetta
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 22 Lug 2014
  • #10
ciao
metti dei var_dump e dividi la querry in modo da capire dove si inghippa
poi i var_dump li togli
PHP:
<?php
//.....
$tiny = $_POST['tiny'];
var_dump($_POST['titolo']);//vedi come e se viene trasmesso il valore
$titolo = $_POST['titolo'];
$pic= $_FILES['photo']['name']; 
//poi dividi la query
$q="INSERT INTO employees VALUES ('$tiny', '$pic', '$titolo')";
var_dump($q);//qui vedi se la queystribga vine come dovrebbe
$ris= mysql_query($q); //se query OK da RESOURCE... , se KO BOOL FALSE
var_dump($ris);//se query OK da RESOURCE... , se KO BOOL FALSE
//.....
?>
posta cosa danno i var_dump
 
S

SardaFilm

Nuovo Utente
19 Lug 2014
8
0
0
  • 22 Lug 2014
  • #11
risolto

borgo italia ha scritto:
ciao
metti dei var_dump e dividi la querry in modo da capire dove si inghippa
poi i var_dump li togli
PHP:
<?php
//.....
$tiny = $_POST['tiny'];
var_dump($_POST['titolo']);//vedi come e se viene trasmesso il valore
$titolo = $_POST['titolo'];
$pic= $_FILES['photo']['name']; 
//poi dividi la query
$q="INSERT INTO employees VALUES ('$tiny', '$pic', '$titolo')";
var_dump($q);//qui vedi se la queystribga vine come dovrebbe
$ris= mysql_query($q); //se query OK da RESOURCE... , se KO BOOL FALSE
var_dump($ris);//se query OK da RESOURCE... , se KO BOOL FALSE
//.....
?>
posta cosa danno i var_dump
Clicca per allargare...

CIao grazie per le risposte, ho già risolto cambiando un po' il codice!
 
Devi accedere o registrarti per poter rispondere.

Discussioni simili

L
inserimento form dati multipli ?
  • luigithen
  • 13 Mag 2021
  • PHP
Risposte
0
Visite
1K
PHP 13 Mag 2021
luigithen
L
J
Form inserimento dati in database
  • jerweb
  • 29 Gen 2021
  • Ajax
Risposte
1
Visite
4K
Ajax 5 Feb 2021
_SAGO
A
Inserimento dati nel database tramite form + altre operazioni
  • AndreaBet
  • 5 Giu 2020
  • PHP
Risposte
18
Visite
2K
PHP 5 Giu 2020
AndreaBet
A
Inserimento dati a cascata
  • Alex_70
  • 25 Apr 2020
  • PHP
  • 9 10 11
Risposte
204
Visite
16K
PHP 28 Mag 2020
Alex_70
T
Da xsd a xml ed inserimento dati in excel
  • tappa81
  • 23 Apr 2020
  • XML
Risposte
0
Visite
2K
XML 23 Apr 2020
tappa81
T
S
[PHP] email con inserimento dati nel database
  • sal88
  • 23 Nov 2019
  • PHP
  • 2
Risposte
23
Visite
4K
PHP 27 Nov 2019
Max 1
G
[Javascript] Errore inserimento dati Backend Node.js e workbench
  • giorgio85
  • 8 Ott 2019
  • Javascript
Risposte
1
Visite
1K
Javascript 28 Ott 2019
macus_adi
B
  • Bloccata
[PHP] Creare PDF dopo inserimento dati form
  • bipolare75
  • 28 Set 2019
  • PHP
Risposte
4
Visite
4K
PHP 28 Set 2019
Max 1
E
Inserimento dati da PHP in tabella MySQL
  • etto.demu
  • 1 Giu 2019
  • PHP
Risposte
5
Visite
3K
PHP 3 Giu 2019
zorro
E
Form inserimento dati con JavaScript
  • Emidio
  • 9 Mar 2019
  • Javascript
Risposte
0
Visite
2K
Javascript 9 Mar 2019
Emidio
E
K
[PHP] Inserimento dati database con postgres
  • keyz23
  • 3 Ott 2018
  • PHP
Risposte
2
Visite
2K
PHP 3 Ott 2018
keyz23
K
K
[PHP + MYSQL ] Inserimento dati in database da form dinamico
  • keyz23
  • 13 Set 2018
  • PHP
Risposte
13
Visite
12K
PHP 11 Ott 2019
marino51
M
Inserimento dati checkbox multipli in db da ajax a php
  • migo80
  • 23 Apr 2018
  • PHP
Risposte
1
Visite
2K
PHP 23 Apr 2018
migo80
M
M
[PHP] errore in semplie form inserimento dati
  • maxdp
  • 13 Nov 2016
  • PHP
Risposte
7
Visite
2K
PHP 18 Nov 2016
maxdp
M
S
[PHP] Inserimento dati su tabelle collegate 1-m
  • solari77
  • 6 Ott 2016
  • PHP
Risposte
17
Visite
4K
PHP 17 Ott 2016
borgo italia
M
[PHP] controllo inserimento dati un un form
  • MoPa
  • 4 Ago 2016
  • PHP
Risposte
4
Visite
6K
PHP 7 Lug 2018
Max 1
[PHP] Generare file pdf con inserimento dati
  • cris8380
  • 10 Giu 2016
  • PHP
  • 2
Risposte
34
Visite
12K
PHP 18 Giu 2016
cris8380
Inserimento dei dati automatici mediante numero di tessera.
  • cris8380
  • 8 Giu 2016
  • PHP
  • 2
Risposte
21
Visite
3K
PHP 9 Giu 2016
cris8380
G
mysql - problemi inserimento dati nel database, consigli.
  • giorgio85
  • 25 Mag 2016
  • MySQL
Risposte
3
Visite
2K
MySQL 26 Mag 2016
marino51
J
Inserimento dati in db da due o più form
  • jumpy83
  • 12 Mar 2016
  • PHP
Risposte
0
Visite
1K
PHP 12 Mar 2016
jumpy83
J
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?