[PHP-users 2375] Re: データベースに接続する方法を教えて下さい

石崎 php-users@php.gr.jp
Mon, 01 Oct 2001 17:04:42 +0900


質問者@石崎です。長文になってしまいまして申し訳ございません。

きしだ様、竹内様、しょうなり@信州様、ありがとうございます。


>データベースは起動していますか?
>データベースの設定はちゃんとできてますか?
出来ております。
ウェブDBプレスに記載されていた下記のプログラムでは動作しておりました。

<HTML>
<HEAD>
<TITLE>PstgreSQL接続テスト</TITLE>
</HEAD>
<BODY>

<?
$con = pg_connect( "" , "" , "" , "" , "wwwdb" ) ;
if( ! $con ) {
     echo "データベースの接続に失敗しました。 <br>\n" ;
  exit ;
}
$result = pg_exec( $con , "select * from testtbl order by tokuten" ) ;
if( ! $result ) {
     echo "SELECTエラーです。 <br>\n" ;
  exit ;
}
$rowco = pg_numrows( $result ) ;
if ( $rowco == 0 ) {
     echo "selectの結果が0行になりました。 <br>\n" ;
  exit ;
}
?>

<h1>PostgreSQL接続テスト</h1>

<table border=2>
<tr align=center>
      <th>名前</th>
   <th>得点</th>
   </tr>

<?
for( $i = 0 ; $i < $rowco ; $i++ ) {

      echo "<tr>\n" ;
   $row = pg_fetch_row( $result , $i ) ;
   if( ! $row ) {
       echo "データ取得エラーです。 <br>\n" ;
    exit ;
 }
 echo "<td algin=left>$row[0]\n" ;
 echo "<td algin=right>$row[1]\n" ;
 
 echo "      </tr>\n" ;
}

?>

</table>

</BODY>
</HTML> 



>それとskyboardのバージョンは。。。
skyboard-2.0.tar.gz です。
最初、まったく動作しなかったので、ホスト会社に問い合わせをしたところ
パーミッションではということだったので、変更したところデータベースに接
続出来ませんという
アラートが出てしまいました。

menu.php3のソースです。

<?
 include("gw.conf");
 include("include/admchk.func");
 $conn = @pg_Connect($host,"5432","","",$masterdb);
 if (!$conn) {
  echo "<B>データベース接続に失敗しました。</B><BR>\n";
  exit;
 }
?>
<HTML>
<?//include("include/body.conf")?>
<BODY BACKGROUND="images/<?echo $menubg?>"  MARGINHEIGHT="0"
MARGINWIDTH="0" TOPMARGIN="0" LEFTMARGIN="0">

<TABLE BORDER=0 CELLPADDING=3 width=60>
<TR>
<TD COLSPAN=3 ALIGN=center><A HREF="index.php3" target="Main"><IMG
SRC="images/btn_top.gif" BORDER=0 ALT="TOP"></A></TD>
</TR>
<?
 $sqlstr = "select * from appconf where use = 't' and cngok = 'f'
order by sort_order;" ;
 $Menu = @pg_exec($conn,$sqlstr);
 $Endd = @pg_numrows($Menu);
 $i = 0;
 while ($i < $Endd){
  if ($i%3 == 0) {
   echo "<TR>";
  }
  echo "<TD><A HREF=\"" . @pg_result($Menu, $i , "link") . "\"
target=\"Main\">";
  echo "<IMG SRC=\"images/";
  echo ereg_replace(".gif","_s.gif",pg_result($Menu,$i,"gazou"));
  echo "\" alt=\"".@pg_result($Menu,$i,"name")."\"
border=0></A></TD>\n";
  $i++;
  if ($i%3 == 0) {
   echo "</TR>";
  }
 }
 if ($i%3 != 0) {
  echo "</TR>";
 }
 $admin = admchk($conn,$PHP_AUTH_USER);
 if ($admin > 0){
  $sqlstr = "select * from appconf where use = 't' and cngok = 't'
order by gwap;";
  $Menu = @pg_exec($conn,$sqlstr);
  $Endd = @pg_numrows($Menu);
  $x = 0;
  while ($x < $Endd){
   if ($x%3 == 0) {
    echo "<TR>";
   }
   echo "<TD><A HREF=\"" . @pg_result($Menu,$x,"link") . "\"
target=\"Main\">";
   echo "<IMG SRC=\"images/";
   echo ereg_replace(".gif","_s.gif",pg_result($Menu,$x,"gazou"));
   echo "\" alt=\"";
   echo @pg_result($Menu,$x,"name")."\" border=0></A>\n</TD>";
   $x++;
   $i++;
   if ($x%3 == 0) {
    echo "</TR>";
   }
  }
  if ($x%3 != 0) {
   echo "</TR>";
  }
 }
?>
<?
 @pg_FreeResult($result);
 @pg_Close($conn);
?>
</TABLE>
</CENTER>

長文になってしまいまことに申し訳ございません。
御教授いただければと思います。
宜しくお願いします。

石崎
info@po.nk-i.net