PHP+MYSQLが使えるところで、無料レンタルサーバー
なかなかないんだなあやっぱり。

------------------------------------------
今使ってみているのは@PAGES。
http://atpages.jp/

◆上部に広告バナーが入る。PC・携帯両方。
◆携帯でみると広告バナーの上に、ソースの切れ端っぽいの(';?>)がみえる;
なんじゃこりゃ。え、自分のせい?
◆。。。あーびっくりした。今なんか一覧画面がみれなかった。
@PAGESログインしてDBみたけど異常なし。
もっかいサイトみてみたら出た。んんん???
たまに不安定?でも初めてのことなので、頻繁かどうかは知らない。
◆登録後すぐに使えたし、MYSQLもブラウザから入ってphpMyAdmin利用できて、
はじめてレンタルサーバー使った身分としては、始めやすいと思った。

------------------------------------------
検索してよく目にするのが下記二つ。
だが、どっちも今は募集していないっていうね!!
(↑2つとも調べた後に気づくっていうね!)

xrea
http://www.xrea.com/
◆広告は一画面に最低一つ貼る必要がある。
(手動or自動。拡張子によって自動挿入できるっぽい)
見える範囲で移動可能。

land.to
http://land.to/
◆広告は上下に自動挿入される。
サンプルみるとテキストっぽいけど。

------------------------------------------


他にいないかーーーーー!!
だーれかー

数百円でもかけたら、あるんだろうけどな。



PHPでPOST受け渡し

詳細画面PHP→更新画面PHP
で、IDが受け渡しできてない・・・

ローカルでは動いてた。
のにまたレンタルサーバーだとうまくいかーん!!

なんでだーなんでだー!
バージョンもあるだろうけど、
そんなちがうもんなの!?


サーバー
PHP-5.2系
mysql4.1.22

んで、なんとかできないかな?とみつけたのが↓
http://www.cpa-lab.com/makebyblog/mt-contents/2007/12-1450.php

→print file_get_contents("php://input");
で、これprintしてみたら、

POSTの中身が文字列でつらつらっと
id=30&gamenFlg=shosai&・・・と&区切りで出ました。
とれてんですけどー!!!
http://php.net/manual/ja/function.file-get-contents.php

な、なんで?
$_POST['id'] じゃだめなの?!
前ページ最後に$_POST['id']をprintしたらちゃんと出てんだよ。
次ページ一番はじめに$_POST['id']をprintしたら出ないんだよ。
・・・うがあ!


次ページでの受け取り方をかえてみた
-------------------------------
//POST文字列取得
$postStr = file_get_contents("php://input");
//POST文字列&区切り(selectId=1&gamenId=・・・) 各キーで分解
$postArr = split("&",$postStr);
$postStr = $postArr[0];
//POST文字列分解後(1個目のID)=区切り 1個目のキーの値を取得(IDがほしかった)
$postArr = split("=",$postStr);
$post_id = $postArr[1];
print $post_id.'
';

無事にIDが表示されたー!


うーん、こんなやりかたでいいんだろうか。
苦肉の策、しかたねーという感が否めないよ。。。

これだと順番がずれたらアウトだな
気をつけよ



・・・・追記
HTML→PHPへは$_POSTでいいんだけど
PHP→PHPだと上の方法使わないとだめだー

んーなんでかわかんねー

思わず取り乱しました→タイトル

レンタルサーバー
結局めもってたサーバーではなく、@PAGESに決定。
→http://atpages.jp/

もちろん無料サーバー!
PHP、MYSQL可。
すぐ使えて、phpmyadmin使えるし。

で、取り乱した原因が
ーーーーーーーーーーーーーーー

【1】
mysql_fetch_assoc()でエラーになった。くそうSELECTしょっぱなからかよってなもんで。

mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in ~
これがどうしてなかなか原因がわからず。

mysql_query()
でエラーになってたことがわかり
(mysql_queryがfalse返してたから)
しかしまたこれがどうしてなかなか原因がわからず。

結果
テーブル名が・・・大文字だっただけ・・・?
テーブル名を小文字にかえたらできたんだもの!
・・・くそう・・・

【2】
あれ、おかしいぞ?
内容が???????わからんやんけ!
日本語すべてが「?」に!!

だってローカルで何度もつまづいてなおしてたとこなのに
環境違うとここまでもか!!!!

結果
mb_internal_encoding("utf-8"); //内部文字コードを変更
これをmysql_query()の前に入れるだけ!

あ、もいっこあった。
ローカルでせっかくなおした
mb_convert_encoding($row['ID'], "SJIS");

$id = $row['ID'];
に。
http://saboten009.blogspot.com/2008/01/phpmysqlutf-8.html

ーーーーーーーーーーーーーーー
ううう・・・長かった(涙



今度は更新処理。

あれ、空になっちゃうな、SQL正しいのに

・・・

・・・・・・

ま た や っ ち ま っ た ! !

SJIS→UTF-8にしないといけなかったんだってば。
どんだけ鳥頭・・・!

mb_convert_encoding(str_replace('~', '~', $value), "UTF-8", "SJIS");





DBから取得した文字列を、長いので何文字かぶんだけ出したい

で。
substr()使ったんだけど、あいうえお→あいうacみたいに、
え、なに「ac」ってなに
となって

で。

参考ページとじちゃってわかんなくなっちゃったんだけど
mb_substr()使いました。


mb_substr($value,0,8,"SJIS"). '…'

あいうえおかきく…


と出るように。

ふいー。
思い通りになるのはうれしい。。。