첫 번째 (또는 이전) 드롭 다운 선택 양식에서 후속 처리 코드/파일로 제출 된 값을 계속 전달할 수있는 방법이 있습니까? 첫 번째 처리 파일 이후에?길 아래의 후속 페이지로 값 전달
다음은 내가하려는 일입니다. 신발 (크기, 유형, 스타일 테이블) 용 db를 만든 다음 스타일에 상대적으로 크기가있는 "syle_in_size"라는 조회 테이블을 만들었습니다. 이 표에서 쿼리를 시작하여 사용자가 검색을 시작할 때 선택하는 SIZE를 기반으로 모든 것이 이루어 지도록하는 것입니다. 거기에서 특정 신발 (크기, 스타일, 유형)이 결정됩니다.
그래서 하나의 드롭 다운/옵션 테이블에서 다른 페이지로 전달되는 코드가 떠올랐다. (나는 다른 페이지를 본다. *** 조언과 페이지를 모두 보았지만 나는 그것을하고 싶다. 승계 --- 부분적으로는 디자인 요소로서 그리고 몇 달 전에 프로그래밍으로 시작한 이래로 자바 스크립트를 모르기 때문에 (한 번에 한 언어 씩). 여기
내가 가진 무엇 :SIZE 표
+--------+------+
| sizeid | size |
+--------+------+
| 7.0 | 7.0 |
| 7.5 | 7.5 |
| 9.0 | 9.0 |
| 9.5 | 9.5 |
| 11.0 | 11.0 |
+--------+------+
TYPE 표
+--------+---------+
| typeid | type |
+--------+---------+
| 1 | Shoes |
| 2 | Boots |
| 3 | Sandals |
+--------+---------+
스타일 테이블
+---------+--------+------------+
| styleid | typeid | style |
+---------+--------+------------+
| 1 | 1 | Athletic |
| 2 | 1 | Lace-up |
| 3 | 1 | Loafers |
| 4 | 1 | Moccasins |
| 5 | 2 | Combat |
| 6 | 2 | Hiking |
| 7 | 2 | Riding |
| 8 | 3 | Flip Flops |
| 9 | 3 | Slide |
+---------+--------+------------+
STYLE_IN_SIZE 표
,+---------------+--------+---------+
| sizeinstyleid | sizeid | styleid |
+---------------+--------+---------+
| 1 | 7.0 | 1 |
| 2 | 7.5 | 1 |
| 3 | 11.0 | 1 |
| 4 | 7.5 | 2 |
| 5 | 9.0 | 2 |
| 6 | 7.5 | 3 |
| 7 | 11.0 | 3 |
| 8 | 7.0 | 4 |
| 9 | 7.5 | 4 |
| 10 | 9.0 | 4 |
| 11 | 11.0 | 5 |
| 12 | 9.0 | 6 |
| 13 | 11.0 | 6 |
| 14 | 7.5 | 7 |
| 15 | 9.0 | 7 |
| 16 | 11.0 | 7 |
| 17 | 7.5 | 8 |
| 18 | 9.0 | 8 |
| 19 | 11.0 | 8 |
| 20 | 7.0 | 9 |
+---------------+--------+---------+
첫 페이지 : SELECT_SIZE.php
<?php
$con = mysql_connect("localhost", "xxxxx", "xxxxx") or die('Could not connect to server');
mysql_select_db("footwear", $con) or die('Could not connect to database');
echo "<form action=\"select_type.php\" method=\"get\">\n";
echo "<select name=\"size\">\n";
$query="SELECT sizeid,size FROM size WHERE sizeid";
$result=mysql_query($query);
while($row=mysql_fetch_array($result,MYSQL_ASSOC))
{
$sizeid= $row['sizeid'];
$size= $row['size'];
echo "<option value=\"$sizeid\">$size</option>";
}
echo "</select>\n";
echo "<input name=\"submit\" type=\"submit\" id=\"sizeid\" value=\"submit\" />\n";
echo "</form> \n";
?>
1 처리 페이지 : 사용자는 크기를 선택 SELECT_STYLE.php 후, 코드는 그 크기로만 모든 신발 형 찾는다. 9.5에 아무도 없다는 것을 알게 될 것입니다. 그것은 저의 작은 시험입니다. 내가 크기에 따라 스타일에 대한 또 다른 드롭 다운을 만들 있기 때문에, 지금은 종류와 크기를 (보여주고 싶어.하지만 얻을 수없는 경우 크기가이에 표시하는 페이지에
<?php
$con = mysql_connect("localhost", "xxxxx", "xxxxx") or die('Could not connect to server');
mysql_select_db("footwear", $con) or die('Could not connect to database');
$sizeid= $_GET['sizeid'];
$size= $_GET['size'];
$query="SELECT sizeid,size FROM size WHERE sizeid=$size";
$result = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_array($result, MYSQL_ASSOC) or die(mysql_error());
$sizeid= $row['sizeid'];
$size= $row['size'];
{
echo "<form action=\"select_style.php\" method=\"get\">\n";
echo "<select name=\"type\">\n";
$query="SELECT DISTINCT type.typeid, type, style_in_size.sizeid FROM style_in_size, type, style, size
WHERE style_in_size.sizeid=$sizeid
AND style_in_size.styleid = style.styleid
AND style.typeid= type.typeid
GROUP BY type";
$result=mysql_query($query);
while($row=mysql_fetch_array($result,MYSQL_ASSOC))
{
$sizeid = $row['sizeid'];
$size= $row['size'];
$typeid = $row['typeid'];
$type=$row['type'];
echo "<option value=\"$typeid\" \"$sizeid\">$type $sizeid</option>";
//I want only the "type" /$type to show in the dropdown but included SIZE for now to see if it would help pass the value to the next page
}
echo "</select>\n";
echo "<input name=\"submit\" type=\"submit\" id=\"typeid\" value=\"submit\" />\n";
echo "</form> \n";
}
?>
패스 페이지는 그때 SELECT_STYLE.php)를 진행할 수 없습니다
<?php
$con = mysql_connect("localhost", "xxxxx", "xxxxx") or die('Could not connect to server');
mysql_select_db("footwear", $con) or die('Could not connect to database');
$sizeid = $_GET['sizeid'];
$size= $_GET['size'];
$typeid = $_GET['typeid'];
$type=$_GET['type'];
$query = "SELECT type, style_in_size.sizeid FROM size, type, style, style_in_size
WHERE type.typeid=$type
AND style_in_size.styleid = style.styleid
AND style.typeid= type.typeid
AND style_in_size.sizeid = size.sizeid";
$result = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_array($result, MYSQL_ASSOC) or die(mysql_error());
$sizeid = $row['sizeid'];
$size= $row['size'];
$typeid = $row['typeid'];
$type=$row['type'];
{
echo "You've chosen $type in size $size ";
}
>
나는 "샌들", 위의 코드는 "당신의 샌들을 선택했습니다"표시를 선택하면
; 크기가 표시되지 않거나 전달되지 않았습니다.내가 해봤 다음 그러나 아무것도 작동 : 또한
$query = "SELECT type.typeid, type, style_in_size.sizeid FROM size, type, style, style_in_size
WHERE type.typeid=$type
AND sizeid = $sizeid
AND size.sizeid = style_in_size.sizeid
AND style_in_size.styleid = style.styleid
AND style.typeid= type.typeid";
: 나는 의미가있는 방식으로 내 질문을 서면으로 작성했습니다 희망
$query = "SELECT type.typeid, type, style_in_size.sizeid FROM size, type, style, style_in_size
WHERE style_in_size.sizeid = $sizeid
AND size.sizeid = style_in_size.sizeid
AND style_in_size.styleid = style.styleid
AND style.typeid= type.typeid
AND typeid=$type";
. 귀하의 도움과 의견을 크게 주시면 감사하겠습니다. 미리 감사드립니다.
** 경고 ** 귀하의 코드에는 [SQL 주입 취약점] (http://en.wikipedia.org/wiki/SQL_injection)이 포함되어 있습니다. 원시 필터링되지 않은 유효성이 확인되지 않은 데이터를 SQL 문자열로 직접 전달합니다. [PDO로 전환] (http://php.net/book.pdo) 또는 [mysqli] (http://php.net/book.mysqli)에서 [준비된 문과 매개 변수화 된 쿼리 문]을 사용할 수 있도록하십시오 (http : //en.wikipedia.org/wiki/Prepared_statement). – Charles
경고를 주셔서 감사합니다, Charles. 앞서 언급했듯이, 나는 새로운 프로그래밍이고, 나는 오래된 교훈을 얻은 것으로 보인다. – Jen