如何检查动态文本字段在上一页中可用


How to check dynamic text field is available in previous page

我在add.php中有这样的代码

function rowInsertion() {
     var table = document.getElementById("bannerTable");
     var row = table.insertRow(5);
     var cell1 = row.insertCell(0);
     var cell2 = row.insertCell(1);
     cell1.innerHTML = "IMAGE:";
     cell2.innerHTML = "<input type='file' name='img_name' id='img_name'  />";
     var x = document.getElementById("bannerTable").rows.length;
}
function rowDeletion() {
     var x = document.getElementById("bannerTable").rows.length;
     if (x >= 12) {     
           document.getElementById("bannerTable").deleteRow(5);         
     }
}

和另一个页面中的另一个代码获取.php以获取这样的文本输入

$img_name = $_POST['img_name'];

但是当行不可用时,我收到未定义的索引"img_name"的错误。在这种情况下如何应用检查。

如果您通过$_POST提交数据,只需检查索引img_name是否设置,如果true则继续。

if(isset($_POST['img_name'])){
  $img_name = $_POST['img_name']; // setting the value to the input
} else {
  $img_name = ''; // setting the value to blank, to prevent undefined error.
}

请注意,截至php 7.x.x,有这个(期待已久的)空合并运算符,它可以在一行中执行此操作。

$img_name = $_POST['img_name'] ?? ''; // TheMoreYouKnow :)

您可以使用以下命令检查现有的帖子数据

if ( isset( $_POST['img_name'] ) )
    $img_name = $_POST['img_name'];