ホームページ php教程 php手册 PHP を使用して Foxmail にデータをインポートするための実装コード

PHP を使用して Foxmail にデータをインポートするための実装コード

Jun 13, 2016 pm 12:13 PM
foxmail php コード 存在する 成し遂げる 輸入 意思 データ 使用 自分の

最近、Xiaoyang は PHP クラスメート ディレクトリを作成しました。生徒はここで名前、電子メール、OICQ、その他の情報を追加または変更し、mySQL データベースに保存できます。ある日、Xiaoyang は、PHP を使用して、学生がダウンロードして Foxmail アドレス帳に情報をインポートできるファイルを生成できたらいいのに、と突然思いつきました。

実行するだけですぐに、Xiaoyang はこの機能を開始しました。それはどのように達成されるのでしょうか?ここでは、名前、メールアドレス、OICQ のエクスポートについてのみ説明します。

情報が必要な場合は、Foxmail アドレス帳にインポートできます。もちろん、最初に Foxmail アドレス帳にインポートされるファイルの内容と形式を理解する必要があります。 Foxmail4.2 でアカウントのアドレス帳を開くと、メニュー バーの「ツール」-「インポート」で、Foxmail が「CSV ファイル」と「Wab ファイル」の 2 つの外部ファイルのインポートをサポートしていることがわかります。 CSV ファイルを生成することを選択します。では、Foxmail にインポートできる CSV ファイルの内容と形式は何でしょうか?まずは Foxmail から CSV ファイルをエクスポートして見てみましょう。 Foxmail のアドレス帳で空でないレコードのあるフォルダーを選択し、「ツール」-「エクスポート」-「テキスト ファイル」を実行し、ファイル名を「TEMP.CSV」として保存し、「次へ」で出力フィールドを選択します。 「名前」、「メールアドレス」、「OICQ」を選択し、「完了」をクリックすると、指定したパスに「TEMP.CSV」ファイルが生成されます。 Microsoft office シリーズをインストールしている場合、これはデフォルトで EXCEL で開かれるファイルであることがわかります。実際には、これをダブルクリックして開くと、インターフェイスが表示されます。図のようになります。



この場合の書き方はまだ分かりません。メモ帳で「TEMP.CSV」ファイルを開くと、その形式が非常に単純であることがわかります。図に示すように、ファイルの最初の行は Foxmail アドレス帳のフィールドで、他の行は値です。各フィールドと値は英語のカンマで区切られます。したがって、私たちは PHP でこの形式の CSV ファイルを生成し、他の人はそれをダウンロードして Foxmail にインポートできます。


しかし、まだ解決すべき問題が残っています。それは、ファイルが区切り値としてカンマを使用しているため、データベースのレコードに英語のカンマがあった場合はどうなるのかということです (注: 以下の記号特に指定のない限り、英語の記号を参照してください) 管理?もちろん、最初にデータ内のカンマを中国語のカンマに置き換えることもできますが、実際には別の方法があります。つまり、CSV ファイル内の対応するフィールドの両端に二重引用符 (「ie " "」) を追加すると、値を区切ります。間にある英語のカンマは区切られた値としては使用されません。また、フィールド内の 2 つの連続した英語の二重引用符 (つまり、「"」) は、区切られた値としてではなく 1 つとしてのみ表示されます。
これらを理解すると、CSV ファイルをエクスポートする PHP ファイルを作成できます:

コードをコピーします コードは次のとおりです:


<? //この行はスペースや改行を入れずにプログラムの先頭に配置する必要があります。以下の header() 関数では、使用前にユーザーに何も出力できないためです。
$dfname="tofoxmail.csv"; //生成されたファイル名
//mySQL データベースに接続します:
mysql_connect("localhost","yourname","yourpassword") または die("接続できませんデータベース!");
mysql_select_db("卒業生") または die("データベース エラー!");
if($action=="downit"){
$getdata=mysql_query("SELECT name , email,oicq FROM classdata"); //データテーブル内の指定されたレコードを選択します
//データがない場合:
if(@mysql_num_rows($getdata)==0){
echo "申し訳ありませんが、まだ情報がありません!";
exit;
}
//以下はダウンロード用のファイルを生成します:
header("Content-disposition: filename=$dfname") ;
header ("Content-type:unknown/unknown");
echo "name, email address, OICQ, foxaddrID"; // Foxmail アドレス帳のフィールドを出力します。 i=1;
while($row=mysql_fetch_array($getdata)){ //データ型の値を取得します
//データ内の各二重引用符を 2 つに置き換えます:
$row[name] ]=str_replace("" ","""",$row[名前]);
$row[email]=str_replace(""","""",$row[email]); $row[oicq]= str_replace(""","""",$row[oicq]);
//対応するフィールドの値に対応する行を出力します。各値は二重引用符とカンマで区切られます:
echobase64_decode( "DQo=").""$row[name]","$row[email]","$row[oicq]",$i";式、「base64_decode("DQo=" )」は改行文字です。「n」が使用されないのは、この 2 つがまったく同じではないためです。
後者を使用すると、Foxmail のインポートが失敗する可能性があります。 >*/
$i;
}
exit;
}
?>
<! -- ダウンロード リンクがクリックされない場合、次の HTML コンテンツが表示されます。表示-->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>Foxmail アドレス帳にデータをエクスポート</title></head>
<body> をクリック<a href='javascript:this.location=this.location "?action=downit"'>ここ</a> ファイルをダウンロードし、保存して Foxmail アドレス帳にインポートします。
操作方法




サーバー上で上記のPHPファイルを実行し、図に示すように、ダウンロードした「tofoxmail.csv」ファイルをメモ帳で開きます。

Foxmail アドレス帳の [ツール] - [インポート] - [CSV ファイル] をクリックすると、データベース内の大量のデータが一度にインポートされます。



(上記のプログラムは、Apache PHP4 mySQL と IIS PHP4 mySQL でテストされています。)

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

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

CakePHP の日付と時刻

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

CakePHP ファイルのアップロード

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

CakePHP ルーティング

CakePHP プロジェクトの構成 CakePHP プロジェクトの構成 Sep 10, 2024 pm 05:25 PM

CakePHP プロジェクトの構成

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP について話し合う

CakePHP クイックガイド CakePHP クイックガイド Sep 10, 2024 pm 05:27 PM

CakePHP クイックガイド

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法

See all articles