selezionare un determinato record da una tabella

Allora con questo visualizzo tutti i record presenti nella tabella e, tramite il submit elimino prorio quello:

<?php

include ("dati.txt");

mysql_connect($host,$user,$password);

mysql_select_db("$db");

print ("");

$dati = mysql_query ("select * from tabellax order by Id DESC");    

while ( $array = mysql_fetch_array($dati) )

{

print ("<form action='deletepromozione.php' method='POST'> 

  <input type='text' name='chiave' value='$array[modello]' size='50'><br>

<input type='submit' value='elimina'></form>

</td></tr><tr><td colspan='2' height='17' width='900'><hr></tr> </table><br>");

}

?>

con questo riprendo ed elimino proprio quel record:

<?php

include ("dati.txt");

mysql_connect($host,$user,$password);

mysql_select_db("$db");

print ("");

$dati = mysql_query ("DELETE from tabellax WHERE modello='$chiave'");

{ 

   print ("OK");

   exit(); 

} 

?>   

ora, il problema come già detto in un altro topic è che per una quastione estetica non posso permettermi di far visualizzare un <input type="text"> ma avrei bisogno di uno nascosto.

PLEASE, HELP ME!

inviato 10 anni fa
yusizu
X 0 X

al posto di  <input type='text' name='chiave' value='$array[modello]' size='50'> potresti mettere

 <input type='hidden' name='chiave' value='$array[modello]'>

in questo modo nascondi il dato che passi tramite il form,ma a livello visivo l'utente non vedra il record che andrà a cancellare,quindi dovresti aggiungerci anche una stampa a video di $array[modello]

risposto 10 anni fa
ice
ice
1
X 0 X

 :police: yusizu, non credi che aprire 3 discussioni su uno stesso identico argomento sia un po' eccessivo ?!? Non credo serva citare il regolamento, basta il buon senso, non trovi?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Scusami Gianni ho voluto aprirne "uno" nuovo semplicemente xchè mi sembrava troppo lunga quella discussione e, o cercato di fare un pò di chiarezza,

per quanto rigurda il doppione di questo cè stato un errore nella connessione per cui pensavo di non averlo scritto e lo ricopiato, ancora tante scuse,

Credimi questo per me è n grosso punto di riferimento e, la vostra cortesia è illimitata, Grazie Ancora!

 ;)

Cmq x ciò che concerne la tue deduzioni cull'altro topic corrispondono esattamente alle mie esigenze oltre all'ormai ripetuta necessità di non far vedere a video quale chiave utilizzo per selezionare proprio quel record,

ora provo con il campo hidden ma se non ricordo male non funziona , oltre al fatto che non riesco ad abbinare a ciò la possibilità di aprire due pagine distinte (acquisto e dettaglio) con dimenzioni predefinite,

Grazie ancora e scusa x i doppioni!

risposto 10 anni fa
yusizu
modificato 10 anni fa
X 0 X

Allora ti consiglio di lasciar perdere il form ed il campo hidden (che comunque funziona...)

Per iniziare sostituisci i 2 bottoni con 2 link. Cliccando su questi link si aprirà una finestra pop-up contenente la pagina opportuna. Per aprire il popup puoi usare un javascript a cui passerai come parametri le dimensioni della finestra e l'URL da aprire.

Per specificare il prodotto a cui fare riferimento nella finestra aperta userai la query string dell'URL. Nell'esempio che ti riporto ho messo una variabile "id" nell'URL della pagina aperta impostata a 1,2 e 3 per indicare i prodotti 1,2 e 3:

Prodotto 1
<br>
<a href="javascript:popup(200,100,'dettagli.php?id=1')">Dettagli</a> - 
<a href="javascript:popup(300,200,'compra.php?id=1')">Acquista</a>
<br><br>
Prodotto 2
<br>
<a href="javascript:popup(200,100,'dettagli.php?id=2')">Dettagli</a> -
<a href="javascript:popup(300,200,'compra.php?id=2')">Acquista</a>
<br><br>
Prodotto 3
<br>
<a href="javascript:popup(200,100,'dettagli.php?id=3')">Dettagli</a> - 
<a href="javascript:popup(300,200,'compra.php?id=3')">Acquista</a>

<script type="text/javascript">
function popup(w,h,url) {
  var l = Math.floor((screen.width-w)/2);
  var t = Math.floor((screen.height-h)/2);
  window.open(url,"","width=" + w + ",height=" + h + ",top=" + t + ",left=" + l);
}
</script>

Se qualcosa non ti è chiara basta chiedere (sempre in questa discussione  ;) )

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Caro Gianni, grazie per il consiglio ma, non credo (nella mia ignoranza) che possa funzionare inquanto l'id del prodotto potrebbe essereeliminato e poi io non conosco esattamente quanti record possono esserci in una tabella (da 1 a infinito)

per cui, assodato e testato che il campo hidden funziona, vorrei procedere in quel senso ovvero fare un array di tutti i prodotti e selezionale dalla tabella un record specifico usando come where il campo chiave nascosto, funziona tutto ora l'unico cruccio e riuscire ad aprire le due relative pagine (acquista e dettagli) con delle misure particolari un pò come pop up, possibilmente che non vengano bloccate dal sp2.

sto procedendo così solo che non riesco ad unire i due script java php:

<script language="JavaScript">
function link(i){   
   if (i==1) { document.form.action='scheda.php';return true;}
   if (i==2) { document.form.action='acquista.php';return true;}
   return false;
}
</script>
 
-------------

 <input type='hidden' name='chiave' value='$array[codice]'>
  <input type='image' src='img.gif' alt= 'Scheda ' width='18' height='16' align='absmiddle' size='20'
  onclick='link(1);submit();'>
                            
     <input type='image' src='img2.gif' alt= 'Acquista' width='22' height='16' align='absmiddle'
 onclick='link(2);submit();'>

questo funziona alla meraviglia solo che vorrei che le due rispettive pagine  si aprissero non a scehrmo intero (in questo caso nello stesso frame) ma come una sorta di pop up  con misure stabilite tipo

esempio x collegamenti ipertestuali: <a href=\"#\" onClick=\"window.open('link(1), 'form', 'width=400,height=500')\">  <img border=0 src='scheda.gif' alt='Scheda Tecnica' width='18' height='16' align='absmiddle' 'text-decoration: none'></a>

ovviamente anche per la voce accquista

come diavolo faccio ad unire questi due benedetti script?

Grazie x l'infinita paziensa!

risposto 10 anni fa
yusizu
modificato 10 anni fa
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda