codice html in php

adfadf

Utente Attivo
18 Apr 2009
83
0
0
Salve dovrei integrare il codice php con l'html.
il mio scopo è prelevare da una tabella determinati campi e vorrei che nella stampa a video di ogni nome, al suo fianco compaia un spazio in cui l'utente possa scrivere le caratteristice di quel campo; in pratica sto estraendo da un campo di una tabella il nome delle caratteristiche degli oggetti e dovrei fare in modo che l'utente possa inseire lui gli attributi delle stesse:
esempio:

caratteristica1(estratta dalla tabella) Valore caratteristica1(da inserire)

ho provato a fare una cosa del genere,
PHP:
$f= "SELECT caratteristica FROM caratteristiche WHERE codsottocategoria= '$_SESSION[codsottocategoria]'";
$b=mysql_query($f);
while($rig=mysql_fetch_array($b))
{
echo "<br> ".$rig['caratteristica']."<input type="text" name="oggetto" value=""><br>";
}
ma nulla, sapreste darmi dei consigli oppure indicarmi un altra strada?
Grazie
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao (di nuovo :D)

intanto la riga

PHP:
echo "<br> ".$rig['caratteristica']."<input type="text" name="oggetto" value=""><br>";

deve essere scritta

PHP:
echo "<br> ".$rig['caratteristica']."<input type=\"text\" name=\"oggetto\" value=\"\"><br>";

o anche

PHP:
echo "<br> $rig['caratteristica'] <input type=\"text\" name=\"oggetto\" value=\"\"><br>";

poi se vuoi che l'input faccia qualcosa devi inseririrlo in un form
 

adfadf

Utente Attivo
18 Apr 2009
83
0
0
si ok, ma il form dovrei inserirlo fuori il il while tipo:
PHP:
echo"<form name=\"FORM\"  method=\"post\" action=\"inserimento.php\">"
while($rig=mysql_fetch_array($b))
{
echo "<br> ".$rig['caratteristica']."<input type=\"text\" name=\"oggetto\" value=\"\"><br>"; 
}
<\form>
la sintassi... è corretta??
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
non proprio

PHP:
echo"<form name=\"FORM\"  method=\"post\" action=\"inserimento.php\">" 
while($rig=mysql_fetch_array($b)) 
{ 
echo "<br> ".$rig['caratteristica']."<input type=\"text\" name=\"oggetto\" value=\"\"><br>";  
} 
echo "<form>";

oppure

PHP:
form name="FORM"  method="post" action="inserimento.php">
<?php
while($rig=mysql_fetch_array($b)) 
{ 
echo "<br> ".$rig['caratteristica']."<input type=\"text\" name=\"oggetto\" value=\"\"><br>";  
}
?>
<form>
 

adfadf

Utente Attivo
18 Apr 2009
83
0
0
perfetto, così va!!! Grandissimo, pero' ho solo un piccolo problema io così al folgio definito da action... passo un numero indefinito di "oggetto"
per inserirli tutti dovrei fare una insert into all'interno di un while, e la condizione del while quale sarà???... non so se mi sono spiegato correttamente...
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
da quello che ho capito dovresti passare non solo la caratteristica inserita, ma anche il codice della caratteristica, altrimenti non sai in che record inserirla
fammi capire meglio quello che devi fare
 

adfadf

Utente Attivo
18 Apr 2009
83
0
0
Lo Scopo è mettere in Vendita Oggetti
Ad ogni oggetto sono associato 2 codici che ne indicano la categoria e la sottocategoria di appartenenza(es: l'oggetto schede telefoniche fa parte della categoria collezionismo e sottocategoria varie), Alle categorie e sottocategorie sono abbinate le caratteristiche (es a collezionismo è abbinata la caratteristica tiratura).
Quindi io con lo script che ho postato prelevo le caratteristiche abbinate alla categoria e sottocategoria dell'ogggetto e per ognuna di esse l'utente può inserire dei valori(grazie al form che tu mi hai aggiustato), nello script successivo dovrò inserire i valori delle caratteristiche all'interno del database... La difficoltà ora ce l'ho nel prelevare i valori che l'utente inserisce negli <iinput type text... name =oggetto> poichè ognuno di questi ha lo stesso nome... se l'utente inserisce 3 valori ognuno per una caratteristica, come li inserisco nel database con il successivo script..?
Se non sono stato chiaro dimmelo tranquillamente, cmq Grazie!!
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
mi interessava sapere se la/le caratteristiche che l'utente inserisce si riferiscono ad un unico codice di categoria e sotto categoria, cioè ogni input si riferisce ad una categoria/sottocategoria o posso avere più categorie/sottocategorie.
postami la select a cui si riferisce il fetch_array
 

adfadf

Utente Attivo
18 Apr 2009
83
0
0
PHP:
$f= "SELECT caratteristica, id FROM caratteristiche WHERE codsottocategoria= '$_SESSION[codsottocategoria]'";
$b=mysql_query($f);
echo"<form name=\"FORM\"  method=\"post\"
action=\"caratteristiche_oggetto2.php\">";
while($rig=mysql_fetch_array($b))
{	
$_SESSION['caratteristica']=$rig['caratteristica'];
 echo "<br>   ".$_SESSION['caratteristica']."<input type=\"text\"name=\"valore\" value=\"\"><br>";
 $_SESSION['idcaratteristica']=$rig['id'];
}
eccolo qua
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
quindi puoi avere (scrivo un probabile output del form)


caratteristica_sottoCat_2 [casella di input]
caratteristica_sottoCat_3 [casella di input]
caratteristica_sottoCat_7 [casella di input]
caratteristica_sottoCat_9 [casella di input]
........
[send]

in cui l'utente, relativamente ad una caratteristica, scrive qualcosa, e questo qualcosa poi tu lo inserisci in una tabella, trasmettendo a caratteristiche_oggetto2.php sia quanto scritto che l'id? giusto?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
io usualmente faccio così (anche se forse esistono sistemi migliori)

PHP:
<?php
//pagina del form

$f= "SELECT caratteristica, id FROM caratteristiche WHERE codsottocategoria= '$_SESSION[codsottocategoria]'"; 
$b=mysql_query($f); 
echo"<form name=\"FORM\"  method=\"post\" 
action=\"caratteristiche_oggetto2.php\">";

while($rig=mysql_fetch_array($b))
$conta=0;//inizializzo contatore
{
	$nomeCar="nomeC".$conta;
	$nomeId="nomeI".$conta;   
//$_SESSION['caratteristica']=$rig['caratteristica']; a che ti serve la session?
	echo "<br>   ".$rig['caratteristica']." <input type=\"text\"name=\"".$nomeCar."\" value=\"\"><br>";
//$_SESSION['idcaratteristica']=$rig['id']; a che ti serve la session?
	//trasmetto l'id associato con un campo nascosto
	echo "<input name=\"".$nomeId."\" type=\"hidden\" value=\"".$rig['id']."\">";
	$conta++;//incremento contatore
}
//trasmetto il numero di caratteristiche risultanti con un campo nascosto
echo "<input name=\"quanti\" type=\"hidden\" value=\"".$conta."\">";
//..............
echo "</form>";
?>



PHP:
<?php
// pagina caratteristiche_oggetto2.php
//....................................

$quanti=$_POST['quanti'];
if($quanti>0){//meglio verificare
	for($j=0, $j<=$quanti,$j++){
		$nomeCar="nomeC".$conta;//attenzione i nomi devono essere uguali alla pag prec
		$nomeId="nomeI".$conta; 
		$carat=addslashes(trim($_POST[$nomeCar]));//leggo la caratteristina enne
		$idCar=$_POST[$nomeCar];//leggo il suo id
		if($carat != ""){//se la caratteristica è stata riempita
		 //tutte le istruzioni di inserimento nella tabella database
		}
	}//fine for lettura ecc..
}else{
//ritorno al form
}//fine if else quanti

?>

prova poi mi sai dire
 

adfadf

Utente Attivo
18 Apr 2009
83
0
0
il primo script l'ho modificato così(il contatore lo inizializo prima del while).
PHP:
$conta=0;
while($rig=mysql_fetch_array($b))
{
$nomeCar="nomeC".$conta;
 $nomeId="nomeI".$conta;
 echo "<br>   ".$rig['caratteristica']."<input type=\"text\"name\"".$nomeCar."\" value=\"\"><br>";
echo "<input name=\"".$nomeId."\" type=\"hidden\"value=\"".$rig['id']."\">";
$conta++;//incremento contatore 

 
}
echo "<input name=\"quanti\" type=\"hidden\" value=\"".$conta."\">";
//questo echo non va dentro??
echo"<br><br><input name=\"Submit\" type=\"submit\"value=\"inserisci\">";
echo"<form>";

il successivo script, mi da errore sulle nel for, credo perchè vuole il punto e virgola, e poi qunado inserisco i punti e virgola gli script girano, ma non mi inserisce nulla,
credo perchè la variabile $conta non la legge, infatti provo a stamparla ma non mi dà nulla..
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
mi da errore sulle nel for, credo perchè vuole il punto e virgola
hai perfettamente ragione:crying:, lo shifth non funzia bene

credo perchè la variabile $conta non la legge

hai messo nella pag caratteristiche_oggetto2.php

$quanti=$_POST['quanti'];//dove quanti è il nome dell'input hidden?
se si prova a mettere


$quanti=(int)$_POST['quanti'];//per forzare a numero intero

e poi scusa ho fatto un errore io

al psto di

PHP:
for($j=0, $j<=$quanti,$j++){ 
        $nomeCar="nomeC".$conta;//attenzione i nomi devono essere uguali alla pag prec 
        $nomeId="nomeI".$conta;

devi mettere

PHP:
for($j=0, $j<=$quanti,$j++){ 
        $nomeCar="nomeC".$j;//attenzione i nomi devono essere uguali alla pag prec 
        $nomeId="nomeI".$j;

--------------------
niuno è perfetto
 

adfadf

Utente Attivo
18 Apr 2009
83
0
0
Sai forse qual è il punto nevralgico, è che provo a farmi stampare nel secondo script
$_POST[$nomeCar]
per vedere cosa contiene, ma risulta vuoto.... non so il perchè...
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
intanto (sono addormentato) mi sono accorto di aver fatto un altro e(o)rrore

$idCar=$_POST[$nomeCar];//leggo il suo id

deve essere

$idCar=$_POST[$nomeId];//leggo il suo id

in che punto hai messo la stampa?
 
Ultima modifica:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
ho fatto una prova simulata e funzia, provala anche tu (salva es come provaPOST.php, se usi altro nome modifica l'action del form)

PHP:
<?php
// ****questa parte simula la pagina di ricezione********************
if(isset($_POST['invia']) && $_POST['invia']!=""){//verifico se dato l'invio
	$quanti=(int)$_POST['quanti'];//leggo quante caselle di input si erano generate
	echo "sono stati generati: ".$quanti." input di caratteristiche <br>";
	for($k=0; $k <$quanti;$k++){//ciclo i vari post
		$inviato="in".$k;//genero il nome, uguale a quello delle caselle di input
		$leggo=$_POST[$inviato];//leggo l'ennesima casella di input
		if($leggo!=""){//se input vuoto salto
			echo "la caratteristica $k è $leggo <br>";
		}//fine if stringa vuota
	}//fine for lettura
	echo "<br>";
}//fine if submit
// *fine pagina ricezione*********************************************

// ** pagina con form per introduzione caratteristiche****************
echo "<form action=\"provaPOST.php\" method=\"post\">";
$conta=0;//simulo il conteggio
for($j=0;$j<5;$j++){//inizio il ciclo degli input, qui c'è il while
	$nome="in".$conta;//creo il nome dell input
	echo "n° ".$conta." <input name=\"".$nome."\" type=\"text\"><br>";//n caselle di input
	$conta++;//simulo il conteggio
}//fine for generazione input caratteristiche
echo "<input name=\"quanti\" type=\"hidden\" value=\"".$conta."\">";//trasmetto quanti input ci sono
echo "<input name=\"invia\" type=\"submit\" value=\"invia\">";
echo "</form>";
// * fine pagina form ***********************************************
?>

credo di averla commentata sufficientemente
dagli un occhio e fai (circa) le stesse cose sulle tue pagine, poi fammi sapere
 

adfadf

Utente Attivo
18 Apr 2009
83
0
0
Primo script, sembra tutto ok anche dai vari echo

PHP:
$f= "SELECT caratteristica, id FROM caratteristiche WHERE codsottocategoria= '$_SESSION[codsottocategoria]'";
$b=mysql_query($f);
echo"<form name=\"FORM\"  method=\"post\" action=\"caratteristiche_oggetto2.php\">";
$conta=0;
while($rig=mysql_fetch_array($b))
{
$nomeCar="nomeC".$conta;
$nomeId="nomeI".$conta;
echo"v".$nomeCar."<br>";
echo "<br>   ".$rig['caratteristica']."<input type=\"text\"name\"".$nomeCar."\" value=\"\"><br>";
echo "<input name=\"".$nomeId."\" type=\"hidden\"value=\"".$rig['id']."\">";
$conta++;//incremento contatore 
echo"".$nomeId."";
} 
echo "<input name=\"quanti\" type=\"hidden\" value=\"".$conta."\">";
echo"<br><br><input name=\"Submit\" type=\"submit\"value=\"inserisci\">";
echo"<form>";
?>

II script

PHP:
require 'connessione3.php';

$quanti=$_POST['quanti'];
if(isset($_POST['Submit']) && $_POST['Submit']!=""){
if($quanti>0){//meglio verificare
echo "sono stati generati: ".$quanti." input di caratteristiche <br>";
for($j=0; $j<$quanti;$j++){
$nomeCar="nomeC".$j;
$nomeId="nomeI".$j;
echo"r".$_POST[$nomeCar]."r";		
$carat=$_POST[$nomeCar];//leggo la caratteristina enne
$idCar=$_POST[$nomeId];//leggo il suo id
 if($carat != ""){//se la caratteristica è stata riempita
  $q="INSERT INTO oggetto_caratteristiche
(valore_caratteristica,codoggetto,codcaratteristica) VALUES
('$carat','$rig[id]','$_SESSION[ultimo_id]')";
$e=mysql_query($q);
}
    }//fine for lettura ecc..
}else{
//ritorno al form
}//fine if else quanti
}

Probllema:echo"r".$_POST[$nomeCar]."r"; questo controllo mi restituisce rr senza il nome della caratteristica....bho' non capisco...
 

adfadf

Utente Attivo
18 Apr 2009
83
0
0
Ho provato, ma è uguale, perchè ho sempre lo stesso output...


sono stati generati: 2 input di caratteristiche
rrrr
 
Discussioni simili
Autore Titolo Forum Risposte Data
M [PHP] Istruzione "echo" all'interno di codice html PHP 2
M [PHP] Come inserire codice html in un ciclo while PHP 2
D [PHP] [RETRIBUITO] cercasi esperto programmatore per realizzare applicazione in html e codice iframe PHP 0
Shyson [HTML] Spostare a sinistra codice php PHP 6
B PHP e JQUERY per scrivere codice html dinamicamente PHP 2
trattorino [PHP] aggiungere html in un codice PHP 0
E [PHP] [HTML] Codice che gestisce l'input e la trasmissione dei dati alla mia email PHP 1
E Importare codice html da una pagina tramite php PHP 9
Joker37 Generare file txt con php estraendo codice html. PHP 4
Z richiamare codice html in file php PHP 2
K Come ottenere codice sorgente HTML di una pagina PHP ? PHP 15
A Inserire codice html gooole maps in una variabile php PHP 1
A Codice html in php PHP 6
T inserimento di codice php in html PHP 10
P Criptare il codice html dato dal PHP? PHP 3
S Codice php in pagine statiche .html PHP 0
G Codice html Javascript 1
L salvare codice html in mysql PHP 3
elpirata Implementare Copy to clipboard in codice html HTML e CSS 1
P [HTML] Codice non funzionante su ZP HTML e CSS 1
C [Joomla] [HTML] Modifica codice per adattamento app Joomla 18
D [RETRIBUITO] cercasi esperto programmatore per realizzare applicazione in html e codice iframe Offerte e Richieste di Lavoro e/o Collaborazione 2
V Passaggio codice html a javascript Javascript 8
A [WordPress] Eliminare riga codice HTML WordPress 6
F [HTML] Navbar interferisce con codice per effetto parallax HTML e CSS 2
I [HTML] Codice box testo con scrollbar sopra immagine HTML e CSS 1
R Codice html per zoomare all' interno di un' immagine HTML e CSS 1
atipika creare codice html da immagine HTML e CSS 1
M [Magento] [HTML] Codice per articoli in vetrina Magento 1
CssNewbie [HTML] Individuazione parti nel codice HTML e CSS 1
romeocharly errore del codice html con javascript durante ottimizzazione websitex5 Javascript 7
M Creazione codice html per far prelevare un banner HTML e CSS 3
A problema : codice html HTML e CSS 1
L echo - andar a capo nel codice html generato dal server PHP 3
JackIlPazzo Come estrarre codice da tabella html? PHP 4
B Inserire codice html per visualizzazione in altro sito web HTML e CSS 3
K inserimento form nel codice html HTML e CSS 1
A aggiungere codice html Javascript 1
S foglio di stile e codice HTML HTML e CSS 3
E come inserire un codice html su facebook HTML e CSS 4
T [risolto]Inserire in una variabile del codice HTML e poi cercare in quella variabile con getelements Javascript 8
S sostituire codice html in molti file HTML e CSS 1
A eseguire codice html da funzione javascript Javascript 2
Y anteprima codice HTML in windows 7 Windows e Software 0
Mauro Guardiani codice html da modificare PHP 2
Mauro Guardiani codice html da modificare HTML e CSS 1
A Codice html per finestra pop up per blogger WordPress 1
A [html] trasformare codice in html PHP 0
J Inserire codice javascript in html Javascript 3
C Codice html per ottenere finestre in primo piano fisse e a scatta sovrapposte HTML e CSS 35

Discussioni simili