Processando dados do formulário dinamicamente preenchidos a partir de um database

Eu tenho um formulário que parece, eu queria ser capaz de coletar os valores das células para o processamento do formulário:

Orders

<?php while($row=mysql_fetch_array($result)){ echo ""; } echo "
Order Number Order Date Ordered By Supplier Total Price Requested By Status Send Notification
"; echo $row['Orderno']; echo ""; echo $row['Orderdate']; echo ""; echo $row['Orderedby']; echo ""; echo $row['Supplier']; echo "£ "; echo $row['totalprice']; echo ""; echo $row['requestedby']; echo ""; echo ' Approved Pending Dissaproved '; echo ""; echo ''; echo "
"; ?>

minha pergunta é como eu posso recuperar os valores em cada célula, para usar no processamento de formulário? Com esses valores, criarei um modelo de e-mail para enviar uma pessoa por e-mail. Por exemplo, algo como $to = $_POST['requestedby']; Tentei usar o POST sem sucesso. Obrigado.

Talvez eu tenha mudado sua lógica porque o HTML não é válido. Além disso, não era necessário fazer vários botões de envio porque existe apenas uma forma:

EDITAR: Se você quiser realmente um botão por linha, você terá que fazer um na linha, o que é possível apenas com tabelas aninhadas (

não permite

dentro dele). Eu acho que será muito complexo.

Então, eu mantive um formulário exclusivo e botão de envio e adicionei uma checkbox de seleção a cada linha para que você selecione um (ou mais) pedidos para enviar e-mails.

 

Orders

< ?php $i = 0; while ($row = mysql_fetch_assoc($result)) { echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $i++; } ?>
  Order Number Order Date Ordered By Supplier Total Price Requested By Status
'; echo ''; echo '

Depois, em PHP, você pode recuperar todas essas informações com isso:

 if(isset($_POST['order_selected'])) { $keys = array_keys($_POST['order_selected']); foreach($keys as $key) { $to = $_POST['order_requested_by'][$key]; // sendmail } } 

Bem, você é o primeiro problema é que você não está armazenando as variables ​​que você está tirando de seu database em qualquer lugar, você está apenas imprimindo-as, então, quando você clicar em Enviar e-mail, a única coisa que você está enviando para sendmail.php é o nome selecionado = “status”.

Armazene seus resultados em variables ​​normais para que você possa tê-los disponíveis em toda a sua página como esta:

 < ?php while($row=mysql_fetch_array($result)){ $Oderno = $row['Orderno']; $Orderdate = $row['Orderdate']; $Orderedby = $row['Orderedby']; $Supplier = $row['Supplier']; $totalprice = $row['totalprice']; $requestedby = $row['requestedby']; } ?> 

então, proceda para preencher sua tabela como esta:

 < ?php echo ""; echo $Orderno; echo ""; echo $Orderdate; echo ""; echo $Orderedby; echo ""; echo $Supplier; echo "£ "; echo $totalprice; echo ""; echo $requestedby; echo ""; echo ' '; echo ""; echo ''; echo ""; echo ""; ?> 

E agora, para que você possa armazenar as variables ​​na sua forma, faça o seguinte:

        

Eu acredito que ter o botão enviar antes dessas inputs não é um problema, mas se é apenas escrever o último bit antes do botão enviar e você será bom.

Espero que isso tenha ajudado!

geralmente uso esse caminho

  < ?php while($row=mysql_fetch_array($result)){ $Orderno = $row['Orderno']; ?>  < ?php } ?> 
Order Number Order Date Ordered By Supplier Total Price Requested By Send Notification
< ?php echo $row['Orderno']; ?> < ?php echo $row['Orderdate']; ?> < ?php echo $row['Orderedby']; ?> < ?php echo $row['Supplier']; ?> < ?php echo $row['totalprice']; ?> < ?php echo $row['requestedby']; ?> Approved" Pending" Dissaproved"

no sendmail.php eu apenas fiz algumas modificações

 $Orderno = $_GET["id"]; $status = $_GET["stt"]; //send_notification($Orderno,$status); //you can put your process code here (like branching maybe) // if($status=="Aproved"){ } // else if($status=="Pending"){ } // else if($status=="Dissaproved"){ }