Я новый ученик и мне нужна ваша поддержка.
У меня есть Echo $ ref;($ ref = number) и передача значения через AJAX на другую страницу для некоторых операций, но это значение всегда передается в виде строки, и если я использую функцию intval ($ _ post (['$ ref1'])), она дает нулевое значение.
php code Пользователь заполнит форму и нажмет на создание нового кода belwo ..
<?php
session_start();
require "includes/config.php";
include('header.php');
?>
<div class='container'>
<div style='margin-top:10px'>
<a href='welcome.php' class='btn btn-primary'>User Profile</a>
<a href='invsummarymaindd.php' class='btn btn-primary'>Back Invoice Summary</a>
<a href='logout.php' class='btn btn-danger'>Sign Out of Your Account</a>
</div>
<div class='row col-md-12' style='margin-top:15px'>
<div class='col-md-3'>
<input type='text' class='form-control' name='vendor' id='vendor' placeholder='Supplier Name'>
</div>
<div class='col-md-3'>
<input type='text' class='form-control' name='vendor_email' id='vendor_email' placeholder='email'>
</div>
<div class='col-md-3'>
<input type='text' class='form-control' name='vendor_person' id='vendor_person' placeholder='Name Of Person'>
</div>
<div class='col-md-3'>
<input type='text' class='form-control' name='vendor_phone' id='vendor_phone' placeholder='Phone Number'>
</div>
</div>
<div class='col-md-3'>
<button name='create_vendor' class='btn btn-primary' id='create_vendor'> Create Invoice </button>
<input type='hidden' name='login_user_id' id='login_user_id'>
</div>
</div>
<div id="maindata"></div>
<br/> <br/>
<br><br>
<script type="text/javascript" src="js/operation.js"></script>
полный код ajax-кода - ajax для передачи данных с одной страницы на другую
$('#create_vendor').on('click',function() {
var vendor = $('#vendor').val();
var vendor_email = $('#vendor_email').val();
var vendor_person = $('#vendor_person').val();
var vendor_phone = $('#vendor_phone').val();
$.ajax({
type: 'POST',
url: 'vendor_info.php',
data: 'vendor='+vendor+'&vendor_email='+vendor_email+'&vendor_person='+vendor_person+'&vendor_phone='+vendor_phone,
success: function(ref2){
show_details(ref2);
}
});
return false;
});
function show_details(ref2){
$.ajax({
type: 'POST',
url: 'vendor_info.php',
data: 'ref1='+ref2,
success: function(data){
console.log(ref2);
console.log(typeof(ref2));
$('#maindata').html(data);
}
});
console.log(typeof(ref2));
}
php-код для вставки данных в mysql
<?php
if(!empty($_POST['vendor']) && !empty($_POST['vendor_email']) && !empty($_POST['vendor_person']) && !empty($_POST['vendor_phone'])){
$max_sql = "SELECT MAX(ID) as max_number FROM supplier";
$max_result = $mysqli->query($max_sql);
$max_number = 1;
while($res=$max_result->fetch_assoc()) {
$max_number = $res['max_number'];
$ref2 = $max_number;
}
$sql_add = "INSERT INTO supplier set
SupplierName = '".$_POST['vendor']."',
Email = '".$_POST['vendor_email']."',
PersonName = '".$_POST['vendor_person']."',
CC = '".$ref2."',
phone = '".$_POST['vendor_phone']."'";
$result = $mysqli->query($sql_add);
echo $ref2;
}
?>
после вставки данных данные будут отображаться на странице путем передачи значения $ ref2 через ajax, который является числом, но он становится строкой и когдаЯ использую в SQL, как показано ниже, никаких данных не появляется, но я использую жесткий номер, чтобы проверить, что он работает
<?php
session_start();
require "includes/config.php";
include('header.php');
?>
<?php
if( isset($_POST['ref1']) && ($_POST['ref1'] != "") ){
$q = $_POST['ref1'];
//to check status of $q
echo $q;
echo gettype($q);
if (is_numeric($q)) { echo "Yes"; } else { echo "No"; }
if (is_string($q)) { echo "Yes"; } else { echo "No"; }
$mquery = "SELECT * FROM supplier WHERE ID='".$q."'";
$result = $mysqli->query($mquery);
echo "<table class='table'>
<tr>
<th>ID</th>
<th>SupplierName</th>
<th>Email</th>
<th>PersonName</th>
<th>phone</th>
</tr>";
while ($row = $result->fetch_assoc()){
echo "<tr>";
echo "<td>".$row['ID']."</td>";
echo "<td>".$row['SupplierName']."</td>";
echo "<td>".$row['Email']."</td>";
echo "<td>".$row['PersonName']."</td>";
echo "<td>".$row['phone']."</td>";
echo "</tr>";
}
echo "</table>";
в поисках поддержки и код заполнен