Передать массив значений td из таблицы в класс функции, а затем вставить в базу данных

TABLE.PHP — таблица корректно отображается. Я только что опубликовал важные коды здесь.

$ipn="192.168.196.";
echo "<form method ='post' action='class_prdsbmt.php'>";
echo "<table border='5'>";
echo "<td>";
echo "<table name='' border='3'>";
for($a1=51;$a1<68;$a1++){
for($a2=52;$a2<70;$a2++){
echo "<tr>";
echo "<td><input type='hidden' value='".$ipn.$a1."' name='td_a[]' />$ipn$a1</td>";
echo "<td><input type='hidden' value='".$ipn.$a2."' name='td_a[]' />$ipn$a2</td>";
echo "</tr>";
$a1+=2;
$a2+=1;
}
echo "</table>";
echo "</td>";
}

echo "<td><input type='submit' value='PRINT' name='btnss' /></td>";

class_prdsbmt.php

include("class_prdtrans.php");
$pcs = $_POST['td_a'];

for ($i = 0; $i < ; $i++) {
$arr=$pcs[$i];
$printval = new PrintVal($arr,"TESTING ONLY");
$crud = new CRUD_process();
}

<?php
if(isset($_POST['btnss'])){
$isSuccess=0;
$strCol = "pcip,pcname";
$strVal = "'".$printval->getIp()."','". $printval-   >getPcname()."'";
$isSuccess = $crud->saveRecord("machine",$strCol,$strVal);
}else{
"NOT SAVED! GO BACK!!!";
}

?>

class_prdtrans.php

define('DB_SERVER','localhost');
define('DB_USER','user');
define('DB_PASSWORD','');
define('DB_NAME','db');

class PrintVal{
var $_ipmac;

function __construct($ipmac,$namemac){
$this->_ipmac = $ipmac;
}

function getIp(){
return $this->_ipmac;
}

}//crud operation
class CRUD_process{
var $con;

function __construct(){
$this->con = new mysqli(DB_SERVER,DB_USER,DB_PASSWORD,DB_NAME);
}

function saveRecord($record,$columns,$values){
$result = false;

switch($record){
case "machine":
$result = $this->con->query("INSERT INTO tbl (".$columns.") VALUES(".$values.");");
break;
default:
}
return $result;
}

function getRecord($record,$values){
$result = false;
$val = explode(",",$values);

switch($record){
case "machine":
$result = $this->con->query("SELECT * FROM tbl WHERE pcip  =".$val[0]." AND pcname = ".$val[1].";");
break;
default:
}
return $result;
}

}

Попробуйте повторить INSERT запрос и вывод неправильный. Значения первого поля (pcip) равны нулю. Ниже приведен вывод SQL.

INSERT INTO tbl (pcip,pcname) VALUES('','TESTING ONLY');

Пожалуйста, помогите мне найти лучший способ или самый простой способ вставить все значения массива ‘td_a []’ из таблицы, которая будет вставлена ​​в мою базу данных, как только я нажму кнопку.

-1

Решение

в class_prdsbmt.php

for ($i = 0; $i < ; $i++) {
$arr=$pcs[$i];
$printval = new PrintVal($arr,"TESTING ONLY");
$crud = new CRUD_process();
}

$ я < Причем, вы также создали так много объектов CRUD даром. переместить его в if (условие isset ниже

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector