par
chegmarco » 27 janv. 2021, 22:08
Bonjour.
J'utilise
Javascript et PHP pour afficher dynamiquement la Liste déroulante dans le Formulaire HTML dont voici le Code JavaScript en appelant les différentes options du select via la fonction PHP fill_product_list($connect):
Code : Tout sélectionner
$('#add_button').click(function(){
$('#orderModal').modal('show');
$('#order_form')[0].reset();
$('.modal-title').html("<i class='fa fa-plus'></i> Create Order");
$('#action').val('Add');
$('#btn_action').val('Add');
$('#span_product_details').html('');
add_product_row();
});
function add_product_row(count = '')
{
var html = '';
html += '<span id="row'+count+'"><div class="row">';
html += '<div class="col-md-8">';
html += '<select name="product_id[]" id="product_id'+count+'" class="form-control selectpicker" data-live-search="true" required>';
html += '<?php echo fill_product_list($connect); ?>';
html += '</select><input type="hidden" name="hidden_product_id[]" id="hidden_product_id'+count+'" />';
html += '</div>';
html += '<div class="col-md-3">';
html += '<input type="number" placeholder="Quantity" name="quantity[]" class="form-control" required />';
html += '</div>';
html += '<div class="col-md-1">';
if(count == '')
{
html += '<button type="button" name="add_more" id="add_more" class="btn btn-success btn-xs">+</button>';
}
else
{
html += '<button type="button" name="remove" id="'+count+'" class="btn btn-danger btn-xs remove">-</button>';
}
html += '</div>';
html += '</div></div><br /></span>';
$('#span_product_details').append(html);
$('.selectpicker').selectpicker();
}
Et maintenant, voici le Code PHP qui affiche les
options de la balise
select dans l'Ajax:
Code : Tout sélectionner
function fill_product_list($connect)
{
$query = "
SELECT * FROM category
WHERE category_status = 'active'
ORDER BY category_name ASC
";
$statement = $connect->prepare($query);
$statement->execute();
$result = $statement->fetchAll();
$output = '';
foreach($result as $row)
{
$output .= '<option value="'.$row["category_id"].'">'.$row["category_name"].'</option>';
}
return $output;
}
Et enfin, le Code HTML affiche le formulaire
select et ses
options sur la page HTML:
Code : Tout sélectionner
<div class="form-group">
<label>Enter Product Details</label>
<span id="span_product_details"></span>
</div>
Mon souci est que je souhaiterais récupérer la valeur de l'option sélectionnée dans une variable PHP pour finalement la stocker dans ma BDD.
Comment donc récupérer en PHP, la valeur de l'
option du
select dans ce cas où celles-ci sont défini en
PHP et
JavaScript au lieu du HTML habituel ???
Merci de m'aider s'il vous plaît.
Bonjour.
J'utilise [b]Javascript et [b]PHP[/b] pour afficher dynamiquement la Liste déroulante dans le Formulaire HTML dont voici le Code JavaScript en appelant les différentes [b]options[/b] du [b]select[/b] via la fonction PHP [b]fill_product_list($connect)[/b]:
[CODE]$('#add_button').click(function(){
$('#orderModal').modal('show');
$('#order_form')[0].reset();
$('.modal-title').html("<i class='fa fa-plus'></i> Create Order");
$('#action').val('Add');
$('#btn_action').val('Add');
$('#span_product_details').html('');
add_product_row();
});
function add_product_row(count = '')
{
var html = '';
html += '<span id="row'+count+'"><div class="row">';
html += '<div class="col-md-8">';
html += '<select name="product_id[]" id="product_id'+count+'" class="form-control selectpicker" data-live-search="true" required>';
html += '<?php echo fill_product_list($connect); ?>';
html += '</select><input type="hidden" name="hidden_product_id[]" id="hidden_product_id'+count+'" />';
html += '</div>';
html += '<div class="col-md-3">';
html += '<input type="number" placeholder="Quantity" name="quantity[]" class="form-control" required />';
html += '</div>';
html += '<div class="col-md-1">';
if(count == '')
{
html += '<button type="button" name="add_more" id="add_more" class="btn btn-success btn-xs">+</button>';
}
else
{
html += '<button type="button" name="remove" id="'+count+'" class="btn btn-danger btn-xs remove">-</button>';
}
html += '</div>';
html += '</div></div><br /></span>';
$('#span_product_details').append(html);
$('.selectpicker').selectpicker();
}[/CODE]
Et maintenant, voici le Code PHP qui affiche les [b]options[/b] de la balise [b]select[/b] dans l'Ajax:
[CODE]function fill_product_list($connect)
{
$query = "
SELECT * FROM category
WHERE category_status = 'active'
ORDER BY category_name ASC
";
$statement = $connect->prepare($query);
$statement->execute();
$result = $statement->fetchAll();
$output = '';
foreach($result as $row)
{
$output .= '<option value="'.$row["category_id"].'">'.$row["category_name"].'</option>';
}
return $output;
}[/CODE]
Et enfin, le Code HTML affiche le formulaire [b]select[/b] et ses [b]options[/b] sur la page HTML:
[CODE]<div class="form-group">
<label>Enter Product Details</label>
<span id="span_product_details"></span>
</div>[/CODE]
[b]Mon souci est que je souhaiterais récupérer la valeur de l'option sélectionnée dans une variable PHP pour finalement la stocker dans ma BDD.[/b]
Comment donc récupérer en PHP, la valeur de l'[b]option[/b] du [b]select[/b] dans ce cas où celles-ci sont défini en [b]PHP[/b] et [b]JavaScript[/b] au lieu du HTML habituel ???
Merci de m'aider s'il vous plaît.