• Home
  • Forum
  • Fare Web
  • PHP

Non inserisce dati nel db

  • Creatore Discussione Creatore Discussione Kirsolo
  • Data di inizio Data di inizio 15 Lug 2013
Prec.
  • 1
  • 2
  • 3
Primo Prec. 3 di 3

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 23 Lug 2013
  • #41
ciao
metti un paio di var_dump e dimmi cosa riportano

PHP:
<?php
$dir="pinco_pallo/";//qui hai messo la tua spero
$file_excess=glob($dir."*.jpg");
$file_excess=array_merge($file_excess,glob($dir."*.JPG"));//il difetto di glob è che è casesensitive
//e se le hai gli altri tipi di immagini
$file_excess=array_merge($file_excess,glob($dir."*.png"));
$file_excess=array_merge($file_excess,glob($dir."*.gif"));
//ricavo i nomi dei file senza percorso
$file_excess=array_map("basename",$file_excess);
//questa parte poi la togli ***
echo "<pre>";
var_dump($file_excess);//dovresti vedere l'elenco dei file
echo "<pre>";
//***
//qui i dati di connessione
foreach($file_excess as $ch => $excess){
    //se c'è puo essere in uno dei 4 campi riservati alle immagini
    $excess=$dir.$excess;
	$query="SELECT * FROM prova WHERE immagine='$excess' OR img2='$excess' OR img3='$excess' OR img4='$excess'";
    $ris=mysql_query($query);
    if(mysql_num_rows($ris)==0){//se 0 il nome non è in tabella
        var_dump(unlink($dir.$excess));//meittilo in un var dump poi lo riporti come prima
    }
}
?>
 
K

Kirsolo

Utente Attivo
17 Gen 2013
171
0
0
  • 23 Lug 2013
  • #42
borgo italia ha scritto:
ciao
metti un paio di var_dump e dimmi cosa riportano

PHP:
<?php
$dir="pinco_pallo/";//qui hai messo la tua spero
$file_excess=glob($dir."*.jpg");
$file_excess=array_merge($file_excess,glob($dir."*.JPG"));//il difetto di glob è che è casesensitive
//e se le hai gli altri tipi di immagini
$file_excess=array_merge($file_excess,glob($dir."*.png"));
$file_excess=array_merge($file_excess,glob($dir."*.gif"));
//ricavo i nomi dei file senza percorso
$file_excess=array_map("basename",$file_excess);
//questa parte poi la togli ***
echo "<pre>";
var_dump($file_excess);//dovresti vedere l'elenco dei file
echo "<pre>";
//***
//qui i dati di connessione
foreach($file_excess as $ch => $excess){
    //se c'è puo essere in uno dei 4 campi riservati alle immagini
    $excess=$dir.$excess;
	$query="SELECT * FROM prova WHERE immagine='$excess' OR img2='$excess' OR img3='$excess' OR img4='$excess'";
    $ris=mysql_query($query);
    if(mysql_num_rows($ris)==0){//se 0 il nome non è in tabella
        var_dump(unlink($dir.$excess));//meittilo in un var dump poi lo riporti come prima
    }
}
?>
Clicca per allargare...

con 6 immagini:

array(6) {
[0]=>
string(8) "Birr.jpg"
[1]=>
string(14) "Desgriglia.jpg"
[2]=>
string(7) "b&w.jpg"
[3]=>
string(19) "bobo_vieri_370d.jpg"
[4]=>
string(9) "prova.jpg"
[5]=>
string(10) "tetto1.jpg"
}
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 23 Lug 2013
  • #43
ciao
quello ok
ma il vardump sull'unlike?
 
K

Kirsolo

Utente Attivo
17 Gen 2013
171
0
0
  • 23 Lug 2013
  • #44
borgo italia ha scritto:
ciao
quello ok
ma il vardump sull'unlike?
Clicca per allargare...

non me lo stampa, ho messo uguale a come hai postato tu il codice
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 23 Lug 2013
  • #45
ciao
allora non entra nell'if(mysql_num_rows($ris)==0)
devo capire il perchè poi spero di saperti dire

counque intanto mettimi un vardump alla query
PHP:
<?php
//...
$query="SELECT * FROM prova WHERE immagine='$excess' OR img2='$excess' OR img3='$excess' OR img4='$excess'"; 
var_dump($query);echo "<br />";
//...
?>
se come hai detto hai caricato sei immagini dovrebbe risultarti
string(xy) "SELECT * FROM prova WHERE immagine='Birr.jpg' OR img2='Birr.jpg' OR img3='Birr.jpg' OR img4='Birr.jpg'"
string(xy) "SELECT * FROM prova WHERE immagine='Desgriglia.jpg' OR img2='Desgriglia.jpg' OR img3='Desgriglia.jpg' OR img4='Desgriglia.jpg'"
string(xy) "SELECT * FROM prova WHERE immagine='b&w.jpg' OR img2='b&w.jpg' OR img3='b&w.jpg' OR img4='b&w.jpg'"
string(xy) "SELECT * FROM prova WHERE immagine='bobo_vieri_370d.jpg' OR img2='bobo_vieri_370d.jpg' OR img3='bobo_vieri_370d.jpg' OR img4='bobo_vieri_370d.jpg'"
string(xy) "SELECT * FROM prova WHERE immagine='prova.jpg' OR img2='prova.jpg' OR img3='prova.jpg' OR img4='prova.jpg'"
string(xy) "SELECT * FROM prova WHERE immagine='tetto1.jpg' OR img2='tetto1.jpg' OR img3='tetto1.jpg' OR img4='tetto1.jpg'"
Clicca per allargare...

e per prova.jpg e tetto1.jpg dovrebbe darti mysql_num_rows($ris)==0
 
K

Kirsolo

Utente Attivo
17 Gen 2013
171
0
0
  • 23 Lug 2013
  • #46
borgo italia ha scritto:
ciao
allora non entra nell'if(mysql_num_rows($ris)==0)
devo capire il perchè poi spero di saperti dire

counque intanto mettimi un vardump alla query
PHP:
<?php
//...
$query="SELECT * FROM prova WHERE immagine='$excess' OR img2='$excess' OR img3='$excess' OR img4='$excess'"; 
var_dump($query);echo "<br />";
//...
?>
se come hai detto hai caricato sei immagini dovrebbe risultarti


e per prova.jpg e tetto1.jpg dovrebbe darti mysql_num_rows($ris)==0
Clicca per allargare...

forse l'ordine delle immagini non è come il precendente ma lo capisci:
Codice:
array(6) {
  [0]=>
  string(8) "Birr.jpg"
  [1]=>
  string(14) "Desgriglia.jpg"
  [2]=>
  string(19) "bobo_vieri_370d.jpg"
  [3]=>
  string(9) "prova.jpg"
  [4]=>
  string(10) "tetto1.jpg"
  [5]=>
  string(13) "Immagine1.png"
}
string(102) "SELECT * FROM prova WHERE immagine='Birr.jpg' OR img2='Birr.jpg' OR img3='Birr.jpg' OR img4='Birr.jpg'"

string(126) "SELECT * FROM prova WHERE immagine='Desgriglia.jpg' OR img2='Desgriglia.jpg' OR img3='Desgriglia.jpg' OR img4='Desgriglia.jpg'"

string(146) "SELECT * FROM prova WHERE immagine='bobo_vieri_370d.jpg' OR img2='bobo_vieri_370d.jpg' OR img3='bobo_vieri_370d.jpg' OR img4='bobo_vieri_370d.jpg'"

string(106) "SELECT * FROM prova WHERE immagine='prova.jpg' OR img2='prova.jpg' OR img3='prova.jpg' OR img4='prova.jpg'"

string(110) "SELECT * FROM prova WHERE immagine='tetto1.jpg' OR img2='tetto1.jpg' OR img3='tetto1.jpg' OR img4='tetto1.jpg'"

string(122) "SELECT * FROM prova WHERE immagine='Immagine1.png' OR img2='Immagine1.png' OR img3='Immagine1.png' OR img4='Immagine1.png'"
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 24 Lug 2013
  • #47
ciao
sto cercando di capire perche non risulta 0 il numero visto che le query sono giuste, metti un altro var_dump
PHP:
<?php
//.....
//qui i dati di connessione
foreach($file_excess as $ch => $excess){
    //se c'è puo essere in uno dei 4 campi riservati alle immagini
    $excess=$dir.$excess;
    $query="SELECT * FROM prova WHERE immagine='$excess' OR img2='$excess' OR img3='$excess' OR img4='$excess'";
	var_dump($query);//allora QUI OK
    $ris=mysql_query($query);
	var_dump(mysql_num_rows($ris)); echo "<br />";//vediamo qui
    if(mysql_num_rows($ris)==0){//se 0 il nome non è in tabella
        var_dump(unlink($dir.$excess));//meittilo in un var dump poi lo riporti come prima
    }
}
?>
fai anche un'altra cosa con phpmyadmin verifica se per caso esistono i record che non ci dovrebbero essere in tal caso bisogna andare a rivedere l'inserimento
 
K

Kirsolo

Utente Attivo
17 Gen 2013
171
0
0
  • 25 Lug 2013
  • #48
borgo italia ha scritto:
ciao
sto cercando di capire perche non risulta 0 il numero visto che le query sono giuste, metti un altro var_dump
PHP:
<?php
//.....
//qui i dati di connessione
foreach($file_excess as $ch => $excess){
    //se c'è puo essere in uno dei 4 campi riservati alle immagini
    $excess=$dir.$excess;
    $query="SELECT * FROM prova WHERE immagine='$excess' OR img2='$excess' OR img3='$excess' OR img4='$excess'";
	var_dump($query);//allora QUI OK
    $ris=mysql_query($query);
	var_dump(mysql_num_rows($ris)); echo "<br />";//vediamo qui
    if(mysql_num_rows($ris)==0){//se 0 il nome non è in tabella
        var_dump(unlink($dir.$excess));//meittilo in un var dump poi lo riporti come prima
    }
}
?>
fai anche un'altra cosa con phpmyadmin verifica se per caso esistono i record che non ci dovrebbero essere in tal caso bisogna andare a rivedere l'inserimento
Clicca per allargare...

con
PHP:
..
$file_excess=array_map("basename",$file_excess); 
//
echo "<pre>"; 
var_dump($file_excess);//dovresti vedere l'elenco dei file 
echo "<pre>"; 
//qui i dati di connessione
$sql = mysql_connect("localhost","root","");
			mysql_selectdb("my_luca",$sql); 
foreach($file_excess as $ch => $excess){ 
	//se c'è puo essere in uno dei 4 campi riservati alle immagini 
	$excess=$dir.$excess; 
    $query="SELECT * FROM prova WHERE immagine='$excess' OR img2='$excess' OR img3='$excess' OR img4='$excess'"; 
    var_dump($query); 
	$ris= mysql_query($query); 
	var_dump(mysql_num_rows($ris)); echo "<br />";//
    if(mysql_num_rows($ris)==0){//se 0 il nome non è in tabella 
		var_dump(unlink($dir.$excess));//quindi lo cancello 
....

Codice:
array(6) {
  [0]=>
  string(8) "Birr.jpg"
  [1]=>
  string(14) "Desgriglia.jpg"
  [2]=>
  string(19) "bobo_vieri_370d.jpg"
  [3]=>
  string(9) "prova.jpg"
  [4]=>
  string(10) "tetto1.jpg"
  [5]=>
  string(13) "Immagine1.png"
}
string(126) "SELECT * FROM prova WHERE immagine='Fotop/Birr.jpg' OR img2='Fotop/Birr.jpg' OR img3='Fotop/Birr.jpg' OR img4='Fotop/Birr.jpg'"
int(1)

string(150) "SELECT * FROM prova WHERE immagine='Fotop/Desgriglia.jpg' OR img2='Fotop/Desgriglia.jpg' OR img3='Fotop/Desgriglia.jpg' OR img4='Fotop/Desgriglia.jpg'"
int(1)

string(170) "SELECT * FROM prova WHERE immagine='Fotop/bobo_vieri_370d.jpg' OR img2='Fotop/bobo_vieri_370d.jpg' OR img3='Fotop/bobo_vieri_370d.jpg' OR img4='Fotop/bobo_vieri_370d.jpg'"
int(1)

string(130) "SELECT * FROM prova WHERE immagine='Fotop/prova.jpg' OR img2='Fotop/prova.jpg' OR img3='Fotop/prova.jpg' OR img4='Fotop/prova.jpg'"
int(1)

string(134) "SELECT * FROM prova WHERE immagine='Fotop/tetto1.jpg' OR img2='Fotop/tetto1.jpg' OR img3='Fotop/tetto1.jpg' OR img4='Fotop/tetto1.jpg'"
int(1)

string(146) "SELECT * FROM prova WHERE immagine='Fotop/Immagine1.png' OR img2='Fotop/Immagine1.png' OR img3='Fotop/Immagine1.png' OR img4='Fotop/Immagine1.png'"
int(1)

nella cartella sempre 6 immagini

nella tabella sql ho 4 record per l'immagine, e ne inserisce solo 4, in quest'ordine:
Fotop/Birr.jpg
Fotop/bobo_vieri_370d.jpg
Fotop/Desgriglia.jpg
Fotop/Immagine1.png
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 25 Lug 2013
  • #49
ciao
fai una prova con un file a parte con un nome che di sicuro NON hai nella tabella

<?php
// dati di connessione
$query="SELECT * FROM prova WHERE immagine='Fotop/pinco_pallo.jpg' OR img2='Fotop/pinco_pallo.jpg' OR img3='Fotop/pinco_pallo.jpg' OR img4='Fotop/pinco_pallo.jpg'";
$ris=mysql($query);
var_dump(mysql_num_rows($ris));
?>
poi prova a mettere il nome di un file che hai in cartella ma sempre NON in tabella
in questi due casi il var dump dovrebbe darti 0
prova poi col nome di un file caricato e che sia in tabella
in questo caso dovrebbe darti 1

oppure prova direttamente le query in phpmyadmin
 
Prec.
  • 1
  • 2
  • 3
Primo Prec. 3 di 3
Devi accedere o registrarti per poter rispondere.

Discussioni simili

[PHP] Insert into non inserisce tutti i dati
  • Monital
  • 24 Nov 2018
  • PHP
Risposte
1
Visite
2K
PHP 24 Nov 2018
Monital
M
Menu a tendina che non inserisce dati nel db
  • Max61
  • 23 Mar 2014
  • PHP
Risposte
8
Visite
2K
PHP 23 Mar 2014
Max61
M
I
non inserisce i dati nel db
  • incrediblekris
  • 18 Nov 2012
  • PHP
  • 2
Risposte
28
Visite
4K
PHP 10 Dic 2012
incrediblekris
I
G
form php connesso a database ma non inserisce dati
  • giuliano91
  • 31 Ott 2012
  • PHP
Risposte
5
Visite
2K
PHP 1 Nov 2012
Longo8
Php non inserisce dati in db mysql
  • DeAndreon
  • 10 Giu 2009
  • PHP
  • 2
Risposte
37
Visite
10K
PHP 25 Giu 2009
DeAndreon
[PDO] insert che non inserisce e non da errori
  • MarcoGrazia
  • 22 Ott 2014
  • PHP
Risposte
1
Visite
2K
PHP 23 Ott 2014
marino51
Non inserisce datane Database
  • Shyson
  • 3 Ott 2014
  • PHP
Risposte
1
Visite
2K
PHP 3 Ott 2014
Shyson
Non inserisce nel db
  • Shyson
  • 28 Apr 2014
  • Database
Risposte
1
Visite
1K
Database 28 Apr 2014
Shyson
R
ob_start() che all interno di un ciclo non funziona
  • roccochiolo
  • 31 Mar 2025
  • PHP
Risposte
0
Visite
142
PHP 31 Mar 2025
roccochiolo
R
F
Invio ora non corretta (+1h e 21 min)
  • forumauro
  • 24 Gen 2025
  • Javascript
Risposte
0
Visite
683
Javascript 24 Gen 2025
forumauro
F
Problema scheda di rete: "Internet non disponibile"
  • felino
  • 21 Gen 2025
  • Windows e Software
Risposte
1
Visite
355
Windows e Software 28 Gen 2025
alainscilly
A
H
Strumento Rimuovi non funziona.
  • hcb
  • 5 Gen 2025
  • Photoshop
Risposte
0
Visite
273
Photoshop 5 Gen 2025
hcb
H
G
campo non presente nel form
  • Gae
  • 7 Mag 2024
  • Javascript
Risposte
2
Visite
3K
Javascript 8 Mag 2024
Gae
G
Mac OS e Client Mail: Stato non in linea
  • felino
  • 23 Nov 2023
  • Mac e Software
Risposte
2
Visite
3K
Mac e Software 24 Apr 2024
nicholasmancini
I
nome utente non esiste nel database
  • Imperor
  • 9 Set 2023
  • PHP
Risposte
1
Visite
2K
PHP 11 Set 2023
Imperor
I
M
Drag and Drop non capisco le sequenze...
  • mapa
  • 1 Mag 2023
  • Javascript
Risposte
1
Visite
2K
Javascript 2 Mag 2023
mapa
M
L
Suggerimento Pagespeed per non vedenti
  • Lenigmista
  • 30 Apr 2023
  • HTML e CSS
Risposte
0
Visite
878
HTML e CSS 30 Apr 2023
Lenigmista
L
F
comando di inclusione file audio in I-Pad non funziona
  • francescoschino
  • 10 Apr 2023
  • HTML e CSS
Risposte
1
Visite
1K
HTML e CSS 14 Gen 2024
Alex Mercer
A
M
Immagini non usate
  • Marco Galli
  • 23 Mar 2023
  • WordPress
Risposte
0
Visite
2K
WordPress 23 Mar 2023
Marco Galli
M
B
Non riesco a trovare i cognomi con i caratteri speciali in Access (Microsoft 365)
  • Beppe56RM
  • 23 Gen 2023
  • MS Access
Risposte
0
Visite
795
MS Access 23 Gen 2023
Beppe56RM
B
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?