誰かが私を助けてくれるのではないかと思います。
解決策が見当たらない問題を見るには、新鮮な目が必要だと感じています。
Location records
以下のフォームは、MySQLデータベースに保持されているリストに使用されます。
<form name="locationsconsole" id="locationsconsole" method="post" action="locationsaction.php">
<?php
$query = "SELECT * FROM `table` WHERE `userid` = '$idnum' ORDER BY locationname";
$result = mysql_query($query) or die('error');
$num = mysql_numrows($result);
mysql_close($connect);
$i=0;
while ($i < $num) {
$lid=mysql_result($result,$i,"locationid");
$lname=mysql_result($result,$i,"locationname");
$laddress=mysql_result($result,$i,"returnedaddress");
<tr>
<td><input type="text" id="lid" name="lid" value="<?=$lid?>"/></td>
<td><div align="center"><?php echo $lname;?></div></td>
<td><div align="left"><?php echo $laddress;?></div></td>
<td><div align="center"><?php echo $findscount?></div></td>
<td><div align="center"><input name="type" type="submit" value="View Details"/></div></td>
<td><div align="center"><input name="type" type="submit" value="Add Finds"/></div></td>
<td><div align="center"><input name="type" type="submit" value="Add Images"/></div></td>
<td><div align="left"><input name="type" type="submit" value="View Location Finds"/></div></td>
</tr>
</form>
以下のコードを使用すると、フォームの最後にある4つのボタンで、ユーザーは4つの別々の画面に移動し、すべてがLocation record
を介してにリンクされ$lid variable
ます。
<?php session_start();
$_SESSION['lid'] = $_POST['lid'];
if (isset($_POST['type'])) {
$urls = array(
'View Details' => 'viewlocation.php',
'Add Finds' => 'addfinds.php',
'Add Images' => 'addimages.php',
'View Location Finds' => 'locationfinds.php'
);
$url = $urls[$_POST['type']];
header("Location: " . $url);
}
?>
したがって、4つの受信フォームすべてで、$lid = $_SESSION['lid'];
この変数をキャプチャするために各ページの上部にこれがあります。
このアーキテクチャは数日前までは完全に機能していましたが、現在はすべて問題が発生しており、その理由はわかりません。私のフォームのこのフィールド<input type="text" id="lid" name="lid" value="<?=$lid?>"/>
が正しい値を保持していることを知っています。
ただし、いくつあるかに関係なく、Locations records
いずれかのボタンをクリックすると、正しい受信画面が表示されますが、それは常にリストの最後の「場所」レコードになります。
ここで自分が間違っていることを見つけられないようです。また、なぜ今問題が発生し始めているのか理解できません。ChromeでJavaScriptコンソールを確認しましたが、エラーも表示されません。
誰かがこれを見てくれるのではないかと思ったのですが、どこが間違っているのか教えてください。
よろしくお願いします