「Type」「Compatible」「StockLevel」「Cost」の4列のデータベースを作成中です。
タイプは「バッテリー」で、互換性のあるフィールドはこのバッテリーが動作するデバイスのIDです。たとえば、「1、4、9」などです。
PHPで行う必要があるのは、「Compatible」行に$_POST[compatible]を含むすべての「Types」をデータベースに照会することです。もちろん、これはIF X = Xほど単純ではありません。これは、最初に[互換性]フィールドを(php)展開する必要があるためです。
頭が痛くて、まだ解決策を見つけようとしていますが、コードを貼り付けて、誰かが助けてくれることを願っています。
IF ($_POST["printer"]) {
$printerinfo_query = mysql_query("SELECT * FROM printers WHERE ID LIKE '$_POST[printer]'");
$printerinfo_result = mysql_fetch_assoc($printerinfo_query);
echo ("<H5>".$printerinfo_result["Model"]."</H5>");
echo "".$printerinfo_result["Description"]."";
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$cartridge_query = mysql_query("SELECT * FROM cartridges");
$cartridge_result = mysql_fetch_assoc($cartridge_query);
$explode = $cartridge_result["Compatible"];
$explodedata = explode(", ", $explode);
$explode_count = count($explodedata);
$explode_count_dec = count($explodedata);
$explode_number = "0"; // Re-creates $explodedata[0], [1], [2] etc.. using $explodedata[$explode_number] in the loop!
echo ("<P>Select a cartridge type —</P>");
echo "<form action='index.php?page=printeradv' method='POST'>";
while ($explode_count_dec > "0"):
$while_query = mysql_query("SELECT * FROM cartridges WHERE ID LIKE '$explodedata[$explode_number]'");
$while_result = mysql_fetch_assoc($while_query);
echo "<input type='radio' value='".$explodedata[$explode_number]."' name='cartridge' />".$while_result["Type"]." <BR /> ";
++$explode_number;
--$explode_count_dec;
endwhile;
echo "<input type='submit' value='Select model' />";
echo "</form>";
}