kolla mysql_error efter mysql_query då queryn säkert är fel på eftersom $result inte blir valid.
Dessutom borde du validera $_POST[foo] innan du skickar de till mysql på det viset.
4 svar · 320 visningar · startad av Thistel
Har hjärnsläpp så här på fredagskvällen. Får inte min if while att fungera får fel:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/virtual/swaf.se/public_html/demo/fpl35result.php on line 68
Din sökning gav 0 träffar!
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/virtual/swaf.se/public_html/demo/fpl35result.php on line 73
if(isset($_POST['foo'])){
$result = mysql_query('SELECT Tbl_35.Serial, tbl_colors.Colors, Tbl_35_version.Version, Tbl_35.In_service, Tbl_35.Withdrawn, tbl_unit.Unit, Tbl_35.Latest_code, Tbl_35.Previous_codes, tbl_status.Status, Tbl_35.Note'
. ' FROM Tbl_35, tbl_colors, Tbl_35_version, tbl_unit, tbl_status'
. ' WHERE ( tbl_colors.ColorsID = Tbl_35.Colors ) AND ( tbl_unit.UnitID = Tbl_35.Unit ) AND ( tbl_status.StatusID = Tbl_35.Status ) AND ( Tbl_35_version.VersionID = Tbl_35.Version) AND ( Tbl_35.Version = ' . $_POST['foo'].' ) ORDER BY Serial ASC') or die (mysql_error());
}
Här är rad 68 och neråt:
<?
if (mysql_num_rows($result) < 1)
echo "Din sökning gav 0 träffar!";
while ($rad = mysql_fetch_array($result))
{
$bgColor = (++$i & 1) ? '#f6f7f7' : '#ffffff';
echo "<tr bgcolor=\"$bgColor\">
<td class=\"databastextBold\" width=\"90\" valign=\"top\">Serial</td>
<td class=\"faktatext\" width=\"100\" valign=\"top\">".$rad["Serial"]."</td>
<td class=\"databastextBold\" width=\"100\" valign=\"top\">In service</td>
<td class=\"faktatext\" width=\"115\" valign=\"top\">".$rad["In_service"]."</td>
<td class=\"databastextBold\" width=\"200\" valign=\"top\">Note</td>
<td rowspan=\"5\" class=\"faktatext\" width=\"70\" valign=\"middle\"><img src='".$rad["Picture"]."'height=\"55\" alt=".$rad["Serial"]."></td>
</tr>
Vad är fel egentligen?
kolla mysql_error efter mysql_query då queryn säkert är fel på eftersom $result inte blir valid.
Dessutom borde du validera $_POST[foo] innan du skickar de till mysql på det viset.
Hittade vad felet var. Det är att tomma fält skickas från formuläret när sidan öppnas. Hur undviker jag det på enklaste sätt?
ORDER BY Tbl_35.Serial ?
Nä..det funkar med bara Serial.