goo blog サービス終了のお知らせ 

やーよわきか?

常に強気でいろんなものに挑戦していきたいものですな~。
いろいろと挑戦していく過程のメモ書き等。

PHPでSpreadsheetへデータ入力

2016-07-20 22:16:00 | PHP
以下などを参考にしました。
http://qiita.com/kenji0302/items/efbdb159130302a90143
先人の方々、いつもありがとうございます<(_ _)>

紹介されている内容を工夫する点が3つあったのでメモしておきます。

1.クライアントIDの作成、キーの取得
#OAuth 2.0 クライアント IDの作成
1-1.「認証情報を作成」をクリック
1-2.「OAuthクライアントID」を選択
1-3.「その他」を選択して作成
名前は任意
ここでできるクライアントIDを以下に記入
$G_CLIENT_ID = 'サービスアカウントのクライアントID';


#サービス アカウント キーの作成
1-4.「認証情報を作成」をクリック
1-5.「サービス アカウント キー」を選択
1-6.「サービスアカウント」を作成したプロジェクトを選択
1-7.「キータイプ」を「P12」を選択して「作成」ボタンをクリック
このときダウンロードするファイル名を以下に記入
$G_CLIENT_KEY_PATH = 'プロジェクト名-xxx.p12';


2.インストール用json
以下のように波括弧を追加

composer.json
{
"require": {
"asimlqt/php-google-spreadsheet-client": "2.3.*",
"google/apiclient": "1.1.2"
}
}

----
3.
php-google-spreadsheet-client\src\Google\Spreadsheet
DefaultServiceRequest.php

232行目あたりの以下を書き換え
CURLOPT_SSL_VERIFYPEER => true,

CURLOPT_SSL_VERIFYPEER => false,


結果:
B列は入力できたけど、A列がされていない…horori

エラー表示

2010-10-16 11:20:00 | PHP
お名前.comのVPSにて開発しているのだが、PHPのエラーメッセージがでないので非常にやりずらい…。

探してみると
【PHP】 エラーが表示されない display_errors のトラブル
を発見。

該当PHPのファイルに
ini_set( 'display_errors', 1 );
を入れるのではなく、上記と確認するファイルをincludeしたファイルを作成するとよいとの事。

<?php
ini_set( 'display_errors', "1" );

include( 'testtest.php' )
?>
※?は全角

できました!
ありがとうございました<(_ _)>

文字化け

2010-04-04 10:26:00 | PHP
共用サーバーSDにて。
pear の DB でMysqlへ接続すると日本語が「???」と文字化け。
MDB2では正常に表示されるんだけど…。

いろいろ検索して試してみるが直らず。
しょうがないので取り急ぎ
データベースへ接続する記述がある下に
下記を追記して対応。

mysql_query("SET NAMES utf8")
or die("can not SET NAMES utf8");

output_buffering

2010-04-03 14:25:00 | PHP
Webアプリをお名前.comの共用サーバーSDに移行。
すると

cannot send session cookie - headers already sent by
のエラーが…。

session_start();

空白や改行があるとか、セッションを開始する前に何か出力されているとかいろいろあった…。

数時間検討した結果
php.iniで

output_buffering = On

と設定することで解決。

Smarty と HTML_QuickForm 連携

2009-12-27 18:38:00 | PHP

//フォーム部品の生成
$form->addElement('radio','customerType','ご宿泊プラン','オーナー様','1');
$form->addElement('radio','customerType','','一般のお客様','2');
$form->addElement('radio','customerType','','','会員様');

//Smartyにフォーム部品などの情報を連想配列として渡す。
//その為にHTML_QuickForm_Renderer_ArraySmartyを利用
$renderer =& new HTML_QuickForm_Renderer_ArraySmarty($smarty);
$form->accept($renderer);
$smarty->assign('form',$renderer->toArray());

例)
{$form.customerType.1.label}

「オーナー様」
と表示される

それ以外は下記を出力してみて確認
var_dump($renderer->toArray());