• Home
  • Forum
  • Fare Web
  • PHP

[RISOLTO]oscurare momentaneamente oggetto del database

  • Creatore Discussione Creatore Discussione Fabrizio Villa
  • Data di inizio Data di inizio 11 Nov 2013
Prec.
  • 1
  • 2
Primo Prec. 2 di 2

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 14 Nov 2013
  • #21
Il problema sta nella variabile $dispo che è un array mentre deve essere un intero di valore 0 o 1.
Come hai chiamato il campo che si chiamava set? Credo dispo.
Allora la query dovrebbe essere così:
$sql = "UPDATE ".$table." SET ".$champ." = '".addslashes($nmodif)."', dispo = ".$dispo." WHERE id = ".$id[$idxid]."";
Clicca per allargare...
Ovviamente correggi prima il valore di $dispo che deve essere valere 0 o 1.
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 14 Nov 2013
  • #22
ciao, grazie mille per la risposta...
mi dà questo errore adesso:

Notice: Array to string conversion in C:\xampp\... on line 83
Erreur SQL > UPDATE tpain SET nom_pain = 'Baguette', dispo = Array WHERE id = 1
Unknown column 'Array' in 'field list'
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 15 Nov 2013
  • #23
Si dal tuo codice non si capisce cosa ci metti in $dispo. E' li il problema.
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 15 Nov 2013
  • #24
ci sono riuscito, ora riesco a modificare il campo (è normale che lo 0 non si veda?)

Potresti aiutarmi per l'ultima cosa per favore?
Non riesco ad usare il WHERE in questa pagina:

PHP:
foreach($tab['pain'] as $id => $pain)   
{			
	if ($pain == 'Baguette')
		echo '<input type="radio" checked="checked" name="rbpain" value="'.$pain.'"  />'.$pain;	
	else
		echo '<input type="radio" name="rbpain" value="'.$pain.'"  />'.$pain;			
}

Nella pagina di prima posso aggiungere o modificare il tipo di pane, grazie al vostro aiuto ora ho aggiunto il campo "dispo" di tipo "set" e riesco anche a modificarlo (0 o 1).
Ma non so dove mettere la variante WHERE...grazie!
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 15 Nov 2013
  • #25
ciao
non ho capito bene, con quei chek vuoi selezionare il tipo di pane e uppare per quel tipo di bane il campo disp?
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 15 Nov 2013
  • #26
ciao!
scusa non riesco a spiegarmi.

Ho una pagina dove si possono sommare diversi ingredienti per formare un sandwich personalizzato.
Questo è il codice della pagina che appare all'utente e dove seleziona gli ingredienti:
PHP:
//Pain	
					
foreach($tab['pain'] as $id => $pain)   
{			
	if ($pain == 'Baguette')
		echo '<input type="radio" checked="checked" name="rbpain" value="'.$pain.'"  />'.$pain;	
	else
		echo '<input type="radio" name="rbpain" value="'.$pain.'"  />'.$pain;			
}
//Charcuterie
echo '</div></td></tr></table><br />
<div class="autorizzo">Dans le cas où l\'un des produits sélectionnés n\'etait pas disponible, nous autorisez-vous à le remplacer par un autre?<br />
<p class="PCentrer"><input type="radio" name="autorizzazione" value="OUI" checked="checked"/>OUI
                  <input type="radio" name="autorizzazione" value="NON" />NON</p></div>
      <table width="690" border="0" cellspacing="5" cellpadding="5">
      <tr>
      <td valign="top"><p class="titolo1">Charcuteries :</p><br />';	
foreach($tab['charcuterie'] as $id => $charcuterie)		
	echo ' <input type="checkbox" name="cbcharcuteries[]" value="'.$charcuterie.'" />'.$charcuterie.'<br />';	
//Fromages
echo '</td>
      <td valign="top"><p class="titolo1">Fromages :</p><br />';	
foreach($tab['fromage'] as $id => $fromage)		
	echo ' <input type="checkbox" name="cbfromages[]" value="'.$fromage.'" />'.$fromage.'<br />';	
//Garniture (inverser à l'affichage avec les diver en bas!!!)
echo '<br /><p class="titolo1">Divers :</p><br />';	
foreach($tab['garniture'] as $id => $garniture)		
	echo ' <input type="checkbox" name="cbgarnitures[]" value="'.$garniture.'" />'.$garniture.'<br />';	
//Divers
echo '</td><td valign="top"><p class="titolo1">Garnitures :</p><br />';	
foreach($tab['divers'] as $id => $divers)		
	echo ' <input type="checkbox" name="cbdivers[]" value="'.$divers.'" />'.$divers.'<br />';

Ora ho aggiunto il campo di tipo "set" chiamato "dispo" per tutte le tabelle degli ingredienti (quindi tpain, tfromages, tgarnitures etc)
Come faccio a usare il [WHERE dispo="1"] in un tipo di pagina come questa?
Cioè, nelle altre pagine ho il comando:
PHP:
$sql_pane = "SELECT * FROM tpane
            WHERE dispo='1'";

Grazie infinite, non so proprio come fare!
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 15 Nov 2013
  • #27
questa è la pagina dove si compone il panino:


questa invece è la pagina admin dove si aggiungono o modificano gli ingredienti
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 15 Nov 2013
  • #28
dunque vicino al tipo di pane (seconda immagine) ho il valore 1 o 0 del campo dispo.
Ma come vedi su "Pain aux olives" ho messo il valore 0 ma appare ugualmente nella pagina (prima immagine)

Mi spiace torturavi cosî, scusatemi tanto...
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 15 Nov 2013
  • #29
Puoi anche disabilitare il check se non è disponibile (ovviamente devi aggiungere altri controlli lato php perchè il check si potrebbe comunque abilitare).
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 15 Nov 2013
  • #30
Come disabilitare il check??? e come si fa???
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 15 Nov 2013
  • #31
ciao
se non ho capito male quello che vuoi fare, ti suggerirei di provare questo
PHP:
<?php
//.....
if(isset($_POST['modifica'])){
	$modificare=$_POST['dispo'];
	foreach($modificare as $id_mod => $val_mod){
		$query="UPDATE tpain SET disp='$val_mod' WHERE id='$id_mod'";
		$ris=mysqli_query($query);
	}
//....
}
//......
$query="SELECT * FROM tpain ORDER BY pain";
$ris=mysqli_query($query);
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
  <table width="60%"  border="0" cellspacing="0" cellpadding="3">
    <tr>
      <td width="64%">&nbsp;</td>
      <td colspan="2" align="center">disponibilit&agrave;</td>
    </tr>
    <tr>
      <td>tipo pane: </td>
      <td width="18%" align="center">SI</td>
      <td width="18%" align="center">NO</td>
    </tr>
<?php 
while($r=mysqli_fetch_array($ris)){
	$id=$r['id'];
	$tipo=$r['nom_pain'];
	$disp=$r['disp'];
	if($disp=="0"){$ch_0="$checked";$ch_1="";}else{$ch_0=="";$ch_1=="checked";}
	echo "<tr><td>$tipo</td>";
	echo "<td align=\"center\"><input name=\"dispo[$id]\" type=\"radio\" value=\"1\"$ch_1 ></td>";
	echo "<td align=\"center\"><input name=\"dispo[$id]\" type=\"radio\" value=\"0\"$ch_0 ></td>";
	echo "</tr>";
}
?>
	<tr><td>&nbsp;</td><td align="center">&nbsp;</td>
      <td align="center"><input name="modifica" type="submit" id="modifica" value="modifica"></td>
    </tr>
  </table>
</form>

in questo modo vedi se il pane è disponibile o no (il chek selezionato) e puoi rendere non disponibile o disponibile uno o più tipi di pane
non l'ho testato quindi ti conviene provarlo a parte
sappimi dire
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 15 Nov 2013
  • #32
intanto grazie infinite! ho provato, ma è un po' complicato per me...
non capisco perchè non si possa fare come ho fatto in un'altra pagina dove semplicemente ho:
PHP:
$sql_pane = "SELECT * FROM tpane
            WHERE dispo='1'";

Quando metto dispo=0 sparisce e risolto il problema.
Non si può fare lo stesso con i check?

Se vuoi ti posto gli errori che mi ha dato con il tuo metodo...
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 15 Nov 2013
  • #33
ciao
intendi qui?
PHP:
foreach($tab['pain'] as $id => $pain)   
{            
    if ($pain == 'Baguette')
        echo '<input type="radio" checked="checked" name="rbpain" value="'.$pain.'"  />'.$pain;    
    else
        echo '<input type="radio" name="rbpain" value="'.$pain.'"  />'.$pain;            
}
se si devi dire cosa c'è prima,
se per ottenere quella variabile $tab['pain'] interroghi il db basta che nella select tu aggiunga
o
WHERE disp='1'
o se c'è gia il vhere per qualcos'altro
AND disp='1'
in questo modo non ti appaiono i check se disp è 0


p.s.
si posta gli errori
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 15 Nov 2013
  • #34
risolto!!!
mi è bastata la frase "dimmi cosa c'è prima..."
ho aggiunto WHERE dispo='1' e ora funziona!!!
grazie...ma forse avrò ancora bisogno...intanto grazie mille!!!!!
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 15 Nov 2013
  • #35
ecco appunto..appena detto
ora funziona, però quando scrivo valore=1 (sul campo dispo) e poi clicco su MODIFICA mi ritorna il valore 0!
Ma perchè????
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 15 Nov 2013
  • #36
porca miseria...se provo a modificare il valore da 0 a 1 mi ritorna sempre 0...come mai?
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 15 Nov 2013
  • #37
ho sbagliato sicuramente qualcosa qui:
PHP:
if ($pass == false)	
		{
			$champ = 'nom_'.substr($table, 1);
			$nom = $_POST['nom_'.substr($table, 1)];
      $champs3 = 'dispo';
			$dispo = $_POST['tdispo'];
      $nom = $_POST[$champ];
			$pass = true; 
      
		}

e qui:

PHP:
else
		if (isset($champs3))
		{		
			for($i = 0; $i < count($nom); $i++)
			{
			
				$sql = "UPDATE ".$table." SET ".$champ." = '".addslashes($nom[$i])."', ".$champs3." = ".$dispo[$i]." WHERE id = ".$id[$i]."";
				mysql_query($sql) or die ("Erreur SQL > ".$sql."<br />".mysql_error()); 								
				$idxid++;
			}			
		}
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 15 Nov 2013
  • #38
ciao
metti un bel var_dump e verifica cosa ti risulta

PHP:
else
        if (isset($champs3))
        {        
            for($i = 0; $i < count($nom); $i++)
            {
                $sql = "UPDATE ".$table." SET ".$champ." = '".addslashes($nom[$i])."', ".$champs3." = ".$dispo[$i]." WHERE id = ".$id[$i]."";
                var_dump($sql); echo "<br />";// poi togli
				mysql_query($sql) or die ("Erreur SQL > ".$sql."<br />".mysql_error());                                 
                $idxid++;
            }            
        }
 
F

Fabrizio Villa

Utente Attivo
19 Gen 2013
131
0
16
  • 17 Nov 2013
  • #39
Grazie infinite pper l'aiuto, veramente, senza non ci sarei mai arrivato...
cmq il problema era semplicemente che nelle impostazioni della tabella, il Length/Values di set l'avevo settato così: '0','1'
e invece bastava: '1'
:dipser:
grazie mille davvero!!!:fonzie:
 
Prec.
  • 1
  • 2
Primo Prec. 2 di 2
Devi accedere o registrarti per poter rispondere.

Discussioni simili

[risolto] oscurare sito
  • jwebcode
  • 19 Nov 2013
  • PHP
Risposte
4
Visite
1K
PHP 21 Nov 2013
jwebcode
L
(risolto)
  • Lollo791
  • 24 Apr 2020
  • MySQL
Risposte
0
Visite
2K
MySQL 24 Apr 2020
Lollo791
L
B
getElementById su piu id(Risolto)
  • BlackPr
  • 24 Apr 2020
  • Javascript
Risposte
7
Visite
3K
Javascript 1 Nov 2021
sonusood2022
S
L
Esercitarsi con Js [RISOLTO]
  • Leonardo Scotti
  • 20 Apr 2020
  • Javascript
Risposte
4
Visite
2K
Javascript 20 Apr 2020
Leonardo Scotti
L
C
[RISOLTO]Inserimento variabile php in input html
  • Cristian83
  • 16 Apr 2020
  • PHP
  • 2
Risposte
20
Visite
8K
PHP 18 Apr 2020
Cristian83
C
L
risolto visualizzazione e ordinamento dati
  • luigithen
  • 13 Apr 2020
  • PHP
Risposte
1
Visite
1K
PHP 13 Apr 2020
luigithen
L
[RISOLTO] SQL PHP IIS
  • moustache
  • 7 Apr 2020
  • PHP
Risposte
8
Visite
2K
PHP 9 Apr 2020
moustache
Ricezione email con destinatari multipli [Risolto]
  • Sergio Unia
  • 6 Apr 2020
  • PHP
Risposte
2
Visite
2K
PHP 7 Apr 2020
Sergio Unia
L
update tabelle in php mysql [risolto]
  • luigithen
  • 31 Mar 2020
  • PHP
Risposte
6
Visite
2K
PHP 31 Mar 2020
luigithen
L
M
Semplice visualizzatore di immagini [risolto con plugin wp]
  • master1986
  • 28 Mar 2020
  • PHP
Risposte
7
Visite
2K
PHP 30 Mar 2020
master1986
M
L
[RISOLTO] Stampa a video risultato count in html
  • Luca Ambrosini
  • 9 Feb 2020
  • PHP
Risposte
13
Visite
4K
PHP 12 Feb 2020
Luca Ambrosini
L
L
[RISOLTO] Eliminare una discussione creata
  • Luca Ambrosini
  • 30 Gen 2020
  • PHP
Risposte
3
Visite
1K
PHP 3 Feb 2020
marino51
[HTML] Problema con scroll bar (risolto)
  • tomorc
  • 17 Nov 2019
  • HTML e CSS
Risposte
0
Visite
2K
HTML e CSS 17 Nov 2019
tomorc
A
[PHP] Problema query insert [RISOLTO]
  • Arawan Omacha
  • 10 Ott 2019
  • PHP
Risposte
14
Visite
3K
PHP 17 Apr 2020
Arawan Omacha
A
B
[PHP] recuperare IP dei server in load balancing [RISOLTO]
  • bdario58
  • 28 Giu 2019
  • PHP
Risposte
3
Visite
2K
PHP 29 Giu 2019
bdario58
B
K
[RISOLTO] Problema Griglia Php+Mysql
  • killu
  • 11 Giu 2019
  • PHP
Risposte
13
Visite
4K
PHP 13 Giu 2019
killu
K
S
  • Bloccata
[RISOLTO] aggiorna tabella da select option asp classic
  • sg2019
  • 10 Mag 2019
  • Classic ASP
Risposte
7
Visite
3K
Classic ASP 11 Mag 2019
sg2019
S
[RISOLTO][Javascript] Datapicker e autocompletamento campo input
  • elpirata
  • 9 Apr 2019
  • Javascript
Risposte
2
Visite
2K
Javascript 9 Apr 2019
elpirata
[RISOLTO][Mysql] Problema insert valori apostrofati
  • elpirata
  • 9 Apr 2019
  • MySQL
Risposte
1
Visite
1K
MySQL 9 Apr 2019
elpirata
[RISOLTO][Mysql] Contare le occorrenze in un campo tipo varchar
  • elpirata
  • 5 Apr 2019
  • MySQL
Risposte
2
Visite
2K
MySQL 6 Apr 2019
elpirata
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?