ホームページ バックエンド開発 PHPチュートリアル PHP随手笔记整理之PHP脚本和JAVA连接mysql数据库_PHP

PHP随手笔记整理之PHP脚本和JAVA连接mysql数据库_PHP

May 29, 2016 am 11:47 AM
PHPスクリプト

环境

开发包:appserv-win32-2.5.10

服务器:Apache2.2

数据库:phpMyAdmin

语言:php5,java

平台:windows 10

java驱动:mysql-connector-java-5.1.37

需求

编写一个PHP脚本语言,连接到phpMyAdmin数据库的test库

编写一个java web服务端,连接到phpMyAdmin数据库的test库

代码

php连接方式

mysql.php

<&#63;php
/*****************************
*数据库连接
*****************************/
$conn = @mysql_connect("localhost","root","123");
if (!$conn){
  die("连接数据库失败:" . mysql_error());
}
mysql_select_db("test", $conn);
//字符转换,读库
mysql_query("set character set utf8");
mysql_query("set names utf8");
&#63;>
ログイン後にコピー

test.php测试

<&#63;php 
  error_reporting(0);     //防止报错
  include('mysql.php');
  $result=mysql_query("select * from user"); //根据前面的计算出开始的记录和记录数
  // 循环取出记录
  $six;
  while($row=mysql_fetch_row($result))
  {  
  echo $row[0];
  echo $row[1];
  }
&#63;>
ログイン後にコピー

运行截图 :

java 连接方式

1.新建一个java project为mysqlTest

2.加载JDBC驱动,mysql-connector-java-5.1.37

MySQLConnection.java

package com.mysqltest;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
/*
 * **Mysql连接**
 * 
 * 参数:
 * conn 连接
 * url mysql数据库连接地址
 * user 数据库登陆账号
 * password 数据库登陆密码
 * 方法:
 * conn 获取连接
 */
public class MySQLConnection {
  public static Connection conn = null;
  public static String driver = "com.mysql.jdbc.Driver";
  public static String url = "jdbc:mysql://127.0.0.1:3306/post";
  public static String user = "root";
  public static String password = "123";
  /*
   * 创建Mysql数据连接 第一步:加载驱动 Class.forName(Driver) 第二步:创建连接
   * DriverManager.getConnection(url, user, password);
   */
  public Connection conn() {
    try {
      Class.forName(driver);
    } catch (ClassNotFoundException e) {
      System.out.println("驱动加载错误");
      e.printStackTrace();
    }
    try {
      conn = DriverManager.getConnection(url, user, password);
    } catch (SQLException e) {
      System.out.println("数据库链接错误");
      e.printStackTrace();
    }
    return conn;
  }
}
ログイン後にコピー

Work.java

package com.mysqltest;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
/*
 * mysql增删改查
 */
public class Work {
  /*
   * insert 增加
   */
  public static int insert() {
    MySQLConnection connection = new MySQLConnection();
    Connection conns; // 获取连接
    PreparedStatement pst; // 执行Sql语句
    int i = 0;
    String sql = "insert into user (username,password) values(&#63;,&#63;)";
    try {
      conns = connection.conn();
      pst = conns.prepareStatement(sql);
      pst.setString(1, "lizi");
      pst.setString(2, "123");
      i = pst.executeUpdate();
      pst.close();
      conns.close();
    } catch (SQLException e) {
      System.out.println("数据写入失败");
      e.printStackTrace();
    }
    return i;
  }
  /*
   * select 写入
   */
  public static void select() {
    MySQLConnection connection = new MySQLConnection();
    Connection conns; // 获取连接
    PreparedStatement pst; // 执行Sql语句(Statement)
    ResultSet rs; // 获取返回结果
    String sql = "select * from user";
    try {
      conns = connection.conn();
      pst = conns.prepareStatement(sql);
      rs = pst.executeQuery(sql);// 执行sql语句
      System.out.println("---------------------------------------");
      System.out.println("名字    |    密码");
      while (rs.next()) {
        System.out.println(rs.getString("username") + "    |    " + rs.getString("password"));
      }
      System.out.println("---------------------------------------");
      conns.close();
      pst.close();
      rs.close();
    } catch (SQLException e) {
      System.out.println("数据查询失败");
      e.printStackTrace();
    }
  }
  /*
   * update 修改
   */
  public static int update() {
    MySQLConnection connection = new MySQLConnection();
    Connection conns; // 获取连接
    PreparedStatement pst; // 执行Sql语句(Statement)
    int i = 0;
    String sql = "update user set password = &#63; where username = &#63;";
    try {
      conns = connection.conn();
      pst = conns.prepareStatement(sql);
      pst.setString(1, "123");
      pst.setString(2, "lizi");
      i = pst.executeUpdate();
      pst.close();
      conns.close();
    } catch (SQLException e) {
      System.out.println("数据修改失败");
      e.printStackTrace();
    }
    return i;
  }
  /*
   * delete 删除
   */
  public static int delete() {
    MySQLConnection connection = new MySQLConnection();
    Connection conns; // 获取连接
    PreparedStatement pst; // 执行Sql语句(Statement)
    int i = 0;
    String sql = "delete from user where username = &#63;";
    try {
      conns = connection.conn();
      pst = conns.prepareStatement(sql);
      pst.setString(1, "lizi");
      i = pst.executeUpdate();
      pst.close();
      conns.close();
    } catch (SQLException e) {
      System.out.println("数据删除失败");
      e.printStackTrace();
    }
    return i;
  }
  /*
   * test
   */
  public static void main(String[] args) {
    // System.out.println(insert());
     select();
    // System.out.println(update());
    // System.out.println(delete());
  }
}

ログイン後にコピー

test截图

ps:php操作MySQL数据库中语句

我们常常用conn.php文件来建立与数据库的链接,然后在所需的文件中利用include 进行调用。这样有效防止对数据库属性的改动 而引起其他有关文件对数据调用的错误。

 现在来看一个conn.php文件,代码如下:

<&#63;php
 $conn=@mysql_connect("localhost","root","")or die("数据库连接错误");//链接数据库服务器
 mysql_select_db("messageboard",$conn);//选择数据库名为messageboard
 mysql_query("set names 'utf'");//使用utf编码,这里不能写成utf-否则将显示乱码,但UTF不区分大小写
 &#63;>
ログイン後にコピー

学习积累,收集了PHP操作MYSQL的几个基础函数:

.使用mysql_connect()函数连接MySQL服务器:mysql_connect("hostname", "username","password");
如,$link = mysql_connect("localhost", "root", "") or die("不能连接到数据库服务器!可能是数据库服务器没有启动,或者用户名密码有误!".mysql_error());

.使用mysql_select_db()函数选择数据库文件:mysql_query("use 数据库名",$link);

如,$db_selected=mysql_query("use example",$link);

.使用mysql_query()函数执行SQL语句:mysql_query(string query(SQL语句),$link);

如:

添加会员:$result=mysql_query("insert into tb_member values('a','')",$link);

修改会员:$result=mysql_query("update tb_member setuser='b',pwd=''where user='a'",$link);

删除会员:$result=mysql_query("delecte from tb_member where user='b'",$link);

查询会员:$sql=mysql_query("select * from tb_book");

模糊查询:$sql=mysql_query("select * from tb_book where bookname like '%".trim($txt_book)."%'");

//通用符%表示零个或任意多个字符。

显示表结构:$result=mysql_query("DESC tb_member");

.使用mysql_fetch_array()函数从数组结果集中获得信息:

语法结构:array mysql_fetch_array(resource result[,int result_type])

参数result资源类型的参数,整形型参数,要传入的是由mysql_fetch_array()函数返回的数据指针;

参数result_type:可选项,php操作MySQL数据库语句基础整数型参数,要传入的是MYSQL_ASSOC(关联索引)、MYSQL_NUM(数字索引) MYSQL_BOTH(包括前两者,默认值)

如:

<>$sql=mysql_query("select * from tb_book");
$info=mysql_fetch_object($sql);
<>$sql=mysql_query("select * from tb_book where bookname like '%".trim($txt_book)."%'");
$info=mysql_fetch_object($sql);
ログイン後にコピー

.使用mysql_fetch_object()函数从结果集中获取一行作为对象:

语法结构:object mysql_fetch_object(resource result);

如:

<>$sql=mysql_query("select * from tb_book");
$info=mysql_fetch_object($sql);
<>$sql=mysql_query("select * from tb_book where bookname like '%".trim($txt_book)."%'");
$info=mysql_fetch_object($sql);
ログイン後にコピー

mysql_fetch_object()函数与mysql_fetch_array()函数类似,只有一点区别,即返回一个对象而不是数组,该函数只能通过字段名来访问数组。访问结果集中行的元素的语法结构:$row->col_name(列名)

.使用mysql_fetch_row()函数逐行获得结果集中的每条记录:

语法结构:array mysql_fetch_row(resource result)

如:

<>$sql=mysql_query("select * from tb_book");
$row=mysql_fetch_row($sql);
<>$sql=mysql_query("select * from tb_book where bookname like '%".trim($txt_book)."%'");
$row=mysql_fetch_row($sql);
ログイン後にコピー

.使用mysql_num_rows()函数获取结果集中地记录数:

语法结构:int mysql_num_rows(resource result)

如:

$sql=mysql_query("select * from tb_book");
......
<&#63;php $nums=mysql_num_rows($sql);echo $nums;&#63;>
ログイン後にコピー

注:若要获得insert、update、delete语句的所影响到的数据,则必须使用mysql_affected_rows()函数来实现。

.mysql_query("set names gb");//设置MySQL的编码格式为 gb类型,以屏蔽乱码。

.关闭记录集:mysql_free_result($sql);

.关闭MySQL数据库服务器:mysql_close($conn);

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP は現在の umask を変更します PHP は現在の umask を変更します Mar 22, 2024 am 08:41 AM

この記事では、PHP での現在の umask の変更について詳しく説明します。編集者が非常に実用的であると考えたので、参考として共有します。この記事を読んで何かを得ることができれば幸いです。現在の umask を変更する PHP の概要 umask は、新しく作成されたファイルとディレクトリのデフォルトのファイル権限を設定するために使用される PHP 関数です。引数を 1 つ受け取ります。これは、ブロックの許可を表す 8 進数です。たとえば、新しく作成されたファイルへの書き込み権限を禁止するには、002 を使用します。 umask を変更する方法 PHP で現在の umask を変更するには 2 つの方法があります。 umask() 関数を使用する: umask() 関数は現在の umask を直接変更します。その構文は次のとおりです。

PHP FFmpeg 拡張機能をサーバーにインストールするにはどうすればよいですか? PHP FFmpeg 拡張機能をサーバーにインストールするにはどうすればよいですか? Mar 28, 2024 pm 02:39 PM

PHPFFmpeg拡張機能をサーバーにインストールするにはどうすればよいですか? PHPFFmpeg 拡張機能をサーバーにインストールすると、PHP プロジェクトでオーディオ ファイルとビデオ ファイルを処理し、オーディオ ファイルとビデオ ファイルのエンコード、デコード、編集、処理などの機能を実装できます。この記事では、PHPFFmpeg 拡張機能をサーバーにインストールする方法と、具体的なコード例を紹介します。まず、PHP と FFmpeg がサーバーにインストールされていることを確認する必要があります。 FFmpeg がインストールされていない場合は、以下の手順に従って FFmpe をインストールできます。

LinuxシステムにPHPプロセスが存在しないことを検出する方法 LinuxシステムにPHPプロセスが存在しないことを検出する方法 Mar 16, 2024 am 11:42 AM

「Linux システムで PHP プロセスがないことを検出する方法。具体的なコード例が必要です」 Web 開発に Linux システムを使用する場合、動的なページやロジックを処理するために PHP プロセスに依存することが多く、場合によっては PHP プロセスがあるかどうかを監視する必要がある場合があります。サーバー上のプロセス。この記事では、Linux システムに PHP プロセスがあるかどうかを検出する方法と、具体的なコード例を紹介します。 PHP プロセスを検出する必要があるのはなぜですか? Web 開発では、PHP プロセスは重要な役割を果たしており、PHP プロセスの解析と実行を担当します。

PHPサーバーのセキュリティ設定:ファイルのダウンロードを禁止する方法 PHPサーバーのセキュリティ設定:ファイルのダウンロードを禁止する方法 Mar 10, 2024 pm 04:48 PM

PHP サーバーのセキュリティ設定は、Web サイトの運用において無視できない重要な部分であり、ファイルのダウンロードを禁止することは、Web サイトのデータのセキュリティを保護するための重要なステップです。 PHP コードにセキュリティ対策を設定することで、悪意のあるユーザーがファイルをダウンロードして Web サイト上の機密情報を取得することを効果的に防ぐことができます。この記事では、ファイルのダウンロードを無効にする方法を詳しく説明し、特定の PHP コード例を示します。 1. 機密ファイルへの直接アクセスの禁止 Web サイトのディレクトリに保存されているデータベース構成ファイル、ログ ファイルなどの機密ファイルには、ブラウザを介して直接アクセスすることを禁止する必要があります。

PHP FFmpeg 拡張機能のインストール ガイド: わかりやすいチュートリアル PHP FFmpeg 拡張機能のインストール ガイド: わかりやすいチュートリアル Mar 28, 2024 pm 02:17 PM

PHPFFmpeg 拡張機能インストールガイド: シンプルでわかりやすいチュートリアル Web サイト開発のプロセスでは、オーディオ、ビデオなどのさまざまなマルチメディア ファイルを処理する必要がある場合があります。 FFmpeg は、オーディオ、ビデオ、その他の形式を処理できる強力なマルチメディア処理ツールで、さまざまなトランスコーディング、カット、その他の操作をサポートします。 PHPFFmpeg 拡張機能は、PHP の FFmpeg 関数を呼び出す拡張ライブラリで、マルチメディア ファイルを簡単に処理するために使用できます。以下ではPHPFについて詳しく紹介していきます

php スイート linux PHP スイート カーニバル! Linux で二刀流を組み合わせ、開発効率が飛躍的に向上 php スイート linux PHP スイート カーニバル! Linux で二刀流を組み合わせ、開発効率が飛躍的に向上 Mar 30, 2024 pm 12:21 PM

最近、業界は一般に、Linux オペレーティング システムでの PHP ソフトウェア スイートのアプリケーションに大きな注目を集めています。現在最も人気のあるサーバーサイド スクリプト言語として、PHP は Web 開発の分野で幅広い用途に使用できます。 Linux システムは、安定したパフォーマンス、高いセキュリティ、完全なオープン性により、大多数のユーザーにとって最初の選択肢となっています。この記事は、Linux システム環境における PHP ソフトウェア スイートの実際のアプリケーションとその最大の統合効果について詳しく説明することを目的としています。 1. PHP スイートの紹介 いわゆる PHP スイートは、本質的に、プログラマーが関連プログラムのタスクを簡単に完了できるようにし、コード開発の複雑さを軽減し、それによって開発効率を向上させる包括的なツール コンポーネントです。幼虫を取る

HTMLでテキストファイルを読む方法 HTMLでテキストファイルを読む方法 Mar 26, 2024 pm 04:07 PM

HTML 自体はテキスト ファイルを直接読み取ることはできませんが、この機能はバックエンド プログラミング言語 (PHP、Python、Java など) またはフロントエンド JavaScript テクノロジを通じて実現できます。バックエンド メソッドは、PHP の file_get_contents() 関数を使用して、テキスト ファイルからコンテンツを読み取り、HTML ページに埋め込みます。フロントエンド JavaScript メソッドは、Fetch API を使用して GET リクエストをサーバー上のテキスト ファイルに送信し、応答コンテンツを解析して HTML ページに表示します。

PHP 時間関数エラー: 戻り時間が不正確です PHP 時間関数エラー: 戻り時間が不正確です Mar 28, 2024 am 09:57 AM

PHP 時刻関数エラー: 返された時刻は不正確です。特定のコード例が必要です。PHP アプリケーションを開発するとき、現在時刻の取得、時刻の書式設定、または時間計算やその他の操作の実行に時刻関数をよく使用します。ただし、コーディング エラーや環境構成の問題が原因で、時刻関数が不正確な時刻を返す状況が発生することがあります。この記事では、具体的なコード例を通じて、PHP 時間関数エラーの原因と解決策について説明します。 1. よくある問題と原因 1. PHP のタイムゾーン設定エラー

See all articles