2

これについて多くの質問があったことは知っていますが、特定の助けが必要です.SQLとPHPは初めてなので、コーディングが不十分でインデントが不十分で申し訳ありません. 私がやろうとしているのは、特定の列の行数を数えることです。次に、この列からこの ID を持つ行の数を見つけたら、この数を php ページに送り返したいと思います。ATM like クエリを使用していますが、これを実行したくありません。

私のレイアウトは 3 ページで、パーツの選択肢とパーツの場所のインデックスです。ユーザーはインデックス ページにパーツ番号を入力します。これがデータベースに対して検索され、ユーザーがパーツの選択肢のページに入力したものと一致するか、似ているパーツが表示されます。 . 次に、必要な部品をクリックすると、場所のページに移動し、この部品に最も近い場所が表示されます.

私がやろうとしているのは、ユーザーがパーツ番号を入力してクエリを実行し、データベースを検索して、入力がある、または入力に似ている行の数を数えてから、通常のようにパーツを出力することですが、私は何をしたいですか?その部品番号を持つ行が 1 つしかない場合は、row = 1 と表示して、この値を使用して if ステートメントを実行できるようにします。私は別のコードを調べましたが、探しているものを静かに見つけることができません。これらは、私が見つけた例であり、必要なものに合わせて変更しようとしました。しかし、私は運がありませんでした。

$query = "SELECT (column) FROM table WHERE column = value";
2.$results = mysql_query($query);
3.$rows = mysql_num_rows($results);
4.echo $rows ;

以下の別のコード

<?php
$serverName = "serverName\instanceName";
$connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo );
if( $conn === false ) {
    die( print_r( sqlsrv_errors(), true));
}

$sql = "SELECT FirstName, LastName FROM SomeTable";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
    die( print_r( sqlsrv_errors(), true) );
}

while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
      echo $row['LastName'].", ".$row['FirstName']."<br />";
}

sqlsrv_free_stmt( $stmt);
?>

コードまたはクエリが私が持っているphp内にあることを望みます。どんなアイデアでも素晴らしいでしょう、または例は貧弱な英語について申し訳ありません多くのおかげで

私のページの私のコードは以下の通りです:

<!DOCTYPE html>
<head>
<meta name="viewport" content="width=device-width, user-scalable=false;">
<script type="text/javascript">
    function submit()
    {
        document.getElementById("start").click(); // Simulates button click
        document.submitForm.submit(); // Submits the form without the button
    }




</script>
</head>
<body>      
            <?php
            try {
                    $serverName = "188.64.188.89";
                    $connectionInfo = array( "Database"=>"tdStoreLocator", "UID"=>"odbcAdmin", "PWD"=>"Midnight1Midnight1");
                    $conn = sqlsrv_connect( $serverName, $connectionInfo );
                    if( $conn === false ) 
                    {
                        die( print_r( sqlsrv_errors(), true));
                    }
                    $sql = "SELECT TOP 10 [company]
                            ,[partnum]
                            ,[description]
                            FROM [tdStoreLocator].[odbcadmin].[Part]
                            WHERE Part.partnum LIKE ? or Part.description LIKE ?";          
                    /* Set parameter values. */
                    $params = array(  "%" . str_replace(" ","%",$_POST["part"] ). "%", "%" . str_replace(" ","%",$_POST["part"] ) . "%");

                    $i = 0;
                    $x = true;
                    /*echo print_r($params, true);*/
                    $stmt = sqlsrv_query( $conn, $sql, $params );


                    if( $stmt === false) 
                    {
                        die( print_r( sqlsrv_errors(), true) );
                    }

                    while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC)) 
                    {
                    if($x == true)
                    {               
                        echo"<form id=\"submitForm\" action=\"locations.php\" method=\"post\">";
                            echo"<input type=\"hidden\" name=\"part\" id=\"3\" value=\"".$row['partnum']."\">";
                            echo"<input type=\"hidden\"  name=\"lon1\" id=\"1\" value=\"".$_POST["lon1"]."\">";
                            echo"<input  type=\"hidden\" name=\"lat1\" id=\"2\" value=\"".$_POST["lat1"]."\">";
                            echo"<button id=\"start\" type=\"submit\">";
                            echo "<div style=\"font-family:verdana;font-weight:bold;color:#3083FF;font-size:20px;width:100%;text-align:center;margin:0; padding:0;\">";
                                    echo $row['partnum']."<br/>";
                            echo "</div>";  
                                    echo"<img style=\"width:50%;\"; src=\"productimages/".$row['partnum'].".jpg\" alt=\"Save icon\" onError=\"this.src='productimages/noimage.jpg'\"/>";
                            echo "<div style=\"font-family:verdana;color:#3083FF;font-size:20px;width:100%;text-align:center;margin:0; padding:0;\">";
                                    echo $row['description'];
                            echo "</div>";
                            echo"</button>";
                        echo"</form>";
                    }   
                    $i++;
                    }
                    sqlsrv_free_stmt( $stmt);
                }   
                    catch (Exception $e) 
                    {
                        echo 'Caught exception: ',  $e->getMessage(), "\n";
                    }

                    if($i < 1) 
                    { 
                        echo "<div style=\"font-family:verdana;font-weight:bold;color:#3083FF;font-size:20px;width:100%;text-align:center;\">"; 
                        echo "No results found, Please check your spelling of the part number or description.";
                        echo "</div>";
                    } 

                    if($i == 1 ) { 


                    echo"<img onload=\"setTimeout(submit(),00001);\" src=\"index.jpg\"  onError=\"this.src='productimages/noimage.jpg'\"/>";


                    }

            ?>
</body>
</html>
4

2 に答える 2

1

count代わりに、クエリで使用できます。

$query = "SELECT count(column) FROM table WHERE column = value";
于 2013-10-11T12:17:02.267 に答える