UmJammer の回答履歴
- 携帯サイトの画像アップロード
Linaxサーバー初心者です。 今携帯サイトの画像アップロードプログラムを作成して いるのですが、どうしても原因が分からず、困っております。どなたか分かる方がいらっしゃいましたら御教授お願いできませんでしょうか。 ▼プログラムのフロー snspost宛てのメールを受信するとメールプログラム(snspost.php)が起動し、メール解析プログラム(postdialy.php)にメールデータを渡し、解析処理を行います。 ▼/etc/aliases の内容 snspost:"|/usr/bin/php /var/www/html/snspost.php" ▼postdialy.php の内容 <?php $path = '/usr/lib/php/pear/'; set_include_path(get_include_path() . PATH_SEPARATOR . $path); require_once "Mail/mimeDecode.php"; require_once "DBUtil.php"; require_once "MailParser.php"; require_once "AuthUtil.php"; // コンフィグ読み込み($configに設定内容が入る) require_once "Config.php"; // 画像格納場所 $image_dir = $config['image_dir']; // 初期化 $images = array(); // 処理実行 $data = $_POST['content']; // メールをデコードする $decoder = new Mail_mimeDecode($data); $structure = $decoder->decode(array( 'include_bodies' => true, 'decode_bodies' => true, 'decode_headers' => true, )); // メールの宛先でユーザーを識別する $to = $structure->headers['to']; // 宛先は[prefix][user_id]_[auth_code]@ホスト名 $pattern = '!^'.$config['prefix'].'([0-9].*?)_([0-9a-z]{6})@.*?!'; $user = null; if (preg_match($pattern, $to, $matches)) { $user_id = $matches[1]; $auth_code = $matches[2]; if ($db = connectDB($db_user, $db_pass, $db_name, $db_host, true)) { // 投稿内容を記録する $query = "SELECT * from sns_users where id=?"; $user = execQuery($db, $query, array($user_id)); if ($user) { $user = $user[0]; } // データベースを閉じる closeDB($db);}} ――――途中省略―――――――――――――― if ($image_save_path) { // 題名取得 $subject = $structure->headers['subject']; $subject = mb_convert_encoding($subject, "utf-8", array('ISO-2022-JP', 'sjis-win', 'utf-8', 'eucjp-win')); // 差出人取得 $from = getFrom($structure->headers['from']); // 本文取得 $body = getBody($structure); $body = mb_convert_encoding($body, "utf-8", array('ISO-2022-JP', 'sjis-win', 'utf-8', 'eucjp-win')); $params = array(); $params[] = $user['id']; $params[] = $subject; $params[] = $body; $params[] = $image_save_path; // データベースへ接続する if ($db = connectDB($db_user, $db_pass, $db_name, $db_host, true)) { // 投稿内容を記録する $query = "INSERT INTO sns_diaries(user_id,subject,contents,image_path,posted_at)". " VALUES (?,?,?,?,NOW())"; execQuery($db, $query, $params); // データベースを閉じる closeDB($db); }}} ?>以上ここまで ちなみに、送り先のsnspost@(ドメイン名)を見ると受信はできています。他に必要な情報などございましたら是非ご連絡いただけますと幸いです。どなたかお助けください。どうかお願いいたします。
- 16進数の文字列を普通の文字列に直す方法
色々と探し尽くしたのですが、 安室奈美恵 のような文字列を 安室奈美恵 という普通の文字列に直す方法が解りません。 chr pack とかが引っかかりましたが、 どうやら設定が必要なようでお手上げです。 どなたかご教授よろしくお願い致します
- 携帯サイトの画像アップロード
Linaxサーバー初心者です。 今携帯サイトの画像アップロードプログラムを作成して いるのですが、どうしても原因が分からず、困っております。どなたか分かる方がいらっしゃいましたら御教授お願いできませんでしょうか。 ▼プログラムのフロー snspost宛てのメールを受信するとメールプログラム(snspost.php)が起動し、メール解析プログラム(postdialy.php)にメールデータを渡し、解析処理を行います。 ▼/etc/aliases の内容 snspost:"|/usr/bin/php /var/www/html/snspost.php" ▼postdialy.php の内容 <?php $path = '/usr/lib/php/pear/'; set_include_path(get_include_path() . PATH_SEPARATOR . $path); require_once "Mail/mimeDecode.php"; require_once "DBUtil.php"; require_once "MailParser.php"; require_once "AuthUtil.php"; // コンフィグ読み込み($configに設定内容が入る) require_once "Config.php"; // 画像格納場所 $image_dir = $config['image_dir']; // 初期化 $images = array(); // 処理実行 $data = $_POST['content']; // メールをデコードする $decoder = new Mail_mimeDecode($data); $structure = $decoder->decode(array( 'include_bodies' => true, 'decode_bodies' => true, 'decode_headers' => true, )); // メールの宛先でユーザーを識別する $to = $structure->headers['to']; // 宛先は[prefix][user_id]_[auth_code]@ホスト名 $pattern = '!^'.$config['prefix'].'([0-9].*?)_([0-9a-z]{6})@.*?!'; $user = null; if (preg_match($pattern, $to, $matches)) { $user_id = $matches[1]; $auth_code = $matches[2]; if ($db = connectDB($db_user, $db_pass, $db_name, $db_host, true)) { // 投稿内容を記録する $query = "SELECT * from sns_users where id=?"; $user = execQuery($db, $query, array($user_id)); if ($user) { $user = $user[0]; } // データベースを閉じる closeDB($db);}} ――――途中省略―――――――――――――― if ($image_save_path) { // 題名取得 $subject = $structure->headers['subject']; $subject = mb_convert_encoding($subject, "utf-8", array('ISO-2022-JP', 'sjis-win', 'utf-8', 'eucjp-win')); // 差出人取得 $from = getFrom($structure->headers['from']); // 本文取得 $body = getBody($structure); $body = mb_convert_encoding($body, "utf-8", array('ISO-2022-JP', 'sjis-win', 'utf-8', 'eucjp-win')); $params = array(); $params[] = $user['id']; $params[] = $subject; $params[] = $body; $params[] = $image_save_path; // データベースへ接続する if ($db = connectDB($db_user, $db_pass, $db_name, $db_host, true)) { // 投稿内容を記録する $query = "INSERT INTO sns_diaries(user_id,subject,contents,image_path,posted_at)". " VALUES (?,?,?,?,NOW())"; execQuery($db, $query, $params); // データベースを閉じる closeDB($db); }}} ?>以上ここまで ちなみに、送り先のsnspost@(ドメイン名)を見ると受信はできています。他に必要な情報などございましたら是非ご連絡いただけますと幸いです。どなたかお助けください。どうかお願いいたします。
- 16進数の文字列を普通の文字列に直す方法
色々と探し尽くしたのですが、 安室奈美恵 のような文字列を 安室奈美恵 という普通の文字列に直す方法が解りません。 chr pack とかが引っかかりましたが、 どうやら設定が必要なようでお手上げです。 どなたかご教授よろしくお願い致します
- 携帯サイトの画像アップロード
Linaxサーバー初心者です。 今携帯サイトの画像アップロードプログラムを作成して いるのですが、どうしても原因が分からず、困っております。どなたか分かる方がいらっしゃいましたら御教授お願いできませんでしょうか。 ▼プログラムのフロー snspost宛てのメールを受信するとメールプログラム(snspost.php)が起動し、メール解析プログラム(postdialy.php)にメールデータを渡し、解析処理を行います。 ▼/etc/aliases の内容 snspost:"|/usr/bin/php /var/www/html/snspost.php" ▼postdialy.php の内容 <?php $path = '/usr/lib/php/pear/'; set_include_path(get_include_path() . PATH_SEPARATOR . $path); require_once "Mail/mimeDecode.php"; require_once "DBUtil.php"; require_once "MailParser.php"; require_once "AuthUtil.php"; // コンフィグ読み込み($configに設定内容が入る) require_once "Config.php"; // 画像格納場所 $image_dir = $config['image_dir']; // 初期化 $images = array(); // 処理実行 $data = $_POST['content']; // メールをデコードする $decoder = new Mail_mimeDecode($data); $structure = $decoder->decode(array( 'include_bodies' => true, 'decode_bodies' => true, 'decode_headers' => true, )); // メールの宛先でユーザーを識別する $to = $structure->headers['to']; // 宛先は[prefix][user_id]_[auth_code]@ホスト名 $pattern = '!^'.$config['prefix'].'([0-9].*?)_([0-9a-z]{6})@.*?!'; $user = null; if (preg_match($pattern, $to, $matches)) { $user_id = $matches[1]; $auth_code = $matches[2]; if ($db = connectDB($db_user, $db_pass, $db_name, $db_host, true)) { // 投稿内容を記録する $query = "SELECT * from sns_users where id=?"; $user = execQuery($db, $query, array($user_id)); if ($user) { $user = $user[0]; } // データベースを閉じる closeDB($db);}} ――――途中省略―――――――――――――― if ($image_save_path) { // 題名取得 $subject = $structure->headers['subject']; $subject = mb_convert_encoding($subject, "utf-8", array('ISO-2022-JP', 'sjis-win', 'utf-8', 'eucjp-win')); // 差出人取得 $from = getFrom($structure->headers['from']); // 本文取得 $body = getBody($structure); $body = mb_convert_encoding($body, "utf-8", array('ISO-2022-JP', 'sjis-win', 'utf-8', 'eucjp-win')); $params = array(); $params[] = $user['id']; $params[] = $subject; $params[] = $body; $params[] = $image_save_path; // データベースへ接続する if ($db = connectDB($db_user, $db_pass, $db_name, $db_host, true)) { // 投稿内容を記録する $query = "INSERT INTO sns_diaries(user_id,subject,contents,image_path,posted_at)". " VALUES (?,?,?,?,NOW())"; execQuery($db, $query, $params); // データベースを閉じる closeDB($db); }}} ?>以上ここまで ちなみに、送り先のsnspost@(ドメイン名)を見ると受信はできています。他に必要な情報などございましたら是非ご連絡いただけますと幸いです。どなたかお助けください。どうかお願いいたします。
- 携帯サイトの画像アップロード
Linaxサーバー初心者です。 今携帯サイトの画像アップロードプログラムを作成して いるのですが、どうしても原因が分からず、困っております。どなたか分かる方がいらっしゃいましたら御教授お願いできませんでしょうか。 ▼プログラムのフロー snspost宛てのメールを受信するとメールプログラム(snspost.php)が起動し、メール解析プログラム(postdialy.php)にメールデータを渡し、解析処理を行います。 ▼/etc/aliases の内容 snspost:"|/usr/bin/php /var/www/html/snspost.php" ▼postdialy.php の内容 <?php $path = '/usr/lib/php/pear/'; set_include_path(get_include_path() . PATH_SEPARATOR . $path); require_once "Mail/mimeDecode.php"; require_once "DBUtil.php"; require_once "MailParser.php"; require_once "AuthUtil.php"; // コンフィグ読み込み($configに設定内容が入る) require_once "Config.php"; // 画像格納場所 $image_dir = $config['image_dir']; // 初期化 $images = array(); // 処理実行 $data = $_POST['content']; // メールをデコードする $decoder = new Mail_mimeDecode($data); $structure = $decoder->decode(array( 'include_bodies' => true, 'decode_bodies' => true, 'decode_headers' => true, )); // メールの宛先でユーザーを識別する $to = $structure->headers['to']; // 宛先は[prefix][user_id]_[auth_code]@ホスト名 $pattern = '!^'.$config['prefix'].'([0-9].*?)_([0-9a-z]{6})@.*?!'; $user = null; if (preg_match($pattern, $to, $matches)) { $user_id = $matches[1]; $auth_code = $matches[2]; if ($db = connectDB($db_user, $db_pass, $db_name, $db_host, true)) { // 投稿内容を記録する $query = "SELECT * from sns_users where id=?"; $user = execQuery($db, $query, array($user_id)); if ($user) { $user = $user[0]; } // データベースを閉じる closeDB($db);}} ――――途中省略―――――――――――――― if ($image_save_path) { // 題名取得 $subject = $structure->headers['subject']; $subject = mb_convert_encoding($subject, "utf-8", array('ISO-2022-JP', 'sjis-win', 'utf-8', 'eucjp-win')); // 差出人取得 $from = getFrom($structure->headers['from']); // 本文取得 $body = getBody($structure); $body = mb_convert_encoding($body, "utf-8", array('ISO-2022-JP', 'sjis-win', 'utf-8', 'eucjp-win')); $params = array(); $params[] = $user['id']; $params[] = $subject; $params[] = $body; $params[] = $image_save_path; // データベースへ接続する if ($db = connectDB($db_user, $db_pass, $db_name, $db_host, true)) { // 投稿内容を記録する $query = "INSERT INTO sns_diaries(user_id,subject,contents,image_path,posted_at)". " VALUES (?,?,?,?,NOW())"; execQuery($db, $query, $params); // データベースを閉じる closeDB($db); }}} ?>以上ここまで ちなみに、送り先のsnspost@(ドメイン名)を見ると受信はできています。他に必要な情報などございましたら是非ご連絡いただけますと幸いです。どなたかお助けください。どうかお願いいたします。
- PHPとMySQLで配列で検索する方法
プログラミング初心者です。 PHPとMySQLでデータベースを作成しています。 配列に格納したデータを既に登録してあるデータに参照して、日付と題名が同じものは登録しないようにしたいと思います。 以下がソースなのですが、2行目でエラーがでてしまいます。そうすればよいかご教授お願いします。 for($j=1; $j<$i; $j++){ $query ="select * from data where date=" . $date2[$j]; $result = mysql_query($query) or die(mysql_error()); $query2 ="select * from data where sub=" . $sub[$j]; $result2 = mysql_query($query2) or die(mysql_error()); if(mysql_num_rows($result) != 0 && mysql_num_rows($result2) != 0){ //登録しない } else{ //データベースに登録
- パスワードの変更
会員サイトを作っているのですが会員登録後のパスワード変更について質問です。 パスワードを忘れた際の再発行は秘密の質問等の特定のフィールドの値と入力された 値が一致すれば再発行で問題ないと思いますがマイページからパスワードを変更する 際に登録時に設定した文字数で表示されますよね?厳密には『●』で表示されますが。 一般的には、ハッシュ化した値を登録するかと思うのでどうやって実現しているのかわかりません。 方法が思いつかないのですが単純にハッシュ化する前のパスワードの文字数を専用の フィールドに登録しその文字数と同数『●』で表示しているだけですか? 調べてもわからなかったので教えてください。
- アクセスのデータを編集したいのですが、上手くいきません
アクセスされる度に、そのアクセスされたphpのurlと$_SERVER["HTTP_REFERER"]とそのphpのリクエスト回数をデータに書き込んでいきたいと思っております。 例) phpファイル=aaa.php?hoge=1 $_SERVER["HTTP_REFERER"] = aaa.php?hoge=2 カウント数=1 aaa.php?hoge=1,aaa.php?hoge=2,1 のようにファイルに書き込んで、同じ用にbbb.phpからaaa.phpに移ったさいには aaa.php?hoge=1,aaa.php?hoge=2,2 もし上記以外の場合は aaa.php?hoge=1,aaa.php?hoge=2,2 aaa.php?hoge=2,aaa.php?hoge=3,1 aaa.php?hoge=1,aaa.php?hoge=3,1 のように追加で同じように書き出しをしたいと思っております。 どなたかご教授ください。 宜しくお願いいたします。
- 締切済み
- hunter_999
- PHP
- 回答数1
- PHP & MySQL 抽出したデータの1番目が出力されない
学校の課題で、PHP & MySQLを使ってウェブを作っています。 BBTapahtumaテーブルからJas_nroをキーにデータを抽出して、Tap_nroとTap_nimiを降順に出力します。 実行してもエラーはでません。現在BBTapahtumaには10件、該当Jas_nroのレコード数は5件(Tap_nro:10-8-7-6-1)ですが、表示されるのは4件(Tap_nro: 8-7-6-1)で、一番初めにくるべきデータが出てきません。where Jas_nro=$no を外し全レコード抽出(Tap_nro: 9-8-7-6-5-4-3-2-1)したり、order by Tap_nro desc を外して昇順(Tap_nro: 6-7-8-10)にしても、やはり1件目に当たるデータが出力されません。 $_SESSION['no']=$noは「1」が入っており、MySQL consoleで「select * from BBTapahtuma where Jas_nro=1 order by Tap_nro desc;」を実行すると、5件出てくるのでその次の出力の方に誤りがあるのだと思います。 テーブルは下記の3項目。テーブルを閉じた後に Lisa (別ページへのリンクボタン)があります。 Tap_nro, Tap_nimi, Lisatietoja(各データの詳細へのリンクボタン) ソースは次の通りです。どこに間違いがあるのか見つけられません。よろしくお願いいたします。 <?php $host="localhost"; $user="xxxx"; $password="xxxx"; $dbname="bb"; $yhteys = mysqli_connect($host, $user, $password, $dbname); $no = $_SESSION['no']; $sql = "select * from BBTapahtuma where Jas_nro=$no order by Tap_nro desc"; if(!$tulos=mysqli_query($yhteys, $sql)) { echo "error"; exit; } if(!$row=mysqli_fetch_array($tulos, MYSQLI_BOTH)) { echo "tiedot eivat ole tietokannassa."; } echo "<table border=0>"; echo "<tr><td>Numero   </td><td>Tapahtuman nimi   </td><td></td></tr>"; while($row=mysqli_fetch_array($tulos, MYSQLI_BOTH)){ echo "<tr>"; echo "<td>". $row['Tap_nro'] ."</td>"; echo "<td>". $row['Tap_nimi'] ."</td>"; echo "<form action='omatkeikkatiedot11.php' method='POST'>"; echo "<span class='button'><input type=hidden name=Tap_nro value=". $row['Tap_nro'] .">"; echo "<td><input type=submit name=lisa id=lisa value='Listietoja'></td></form></span></tr>"; } echo "</table>"; echo "<br><br>"; echo "<form action=omatkeikkatiedot2.php method=POST>"; echo "<div class='button'><input type=hidden name=Jas_nro value=". $row['Jas_nro'].">"; echo "<input type=submit name='Lisaa' id='laheta' value ='Lisaa'>"; echo "</div></form>"; ?>
- fetch_array文
データベースから取得した値をHTMLにて 出力する際に同じ値がある場合、1つのみ 表示する事は可能でしょうか? データベース 1.西武ライオンズ 2.西武ライオンズ 3.巨人 4.巨人 while($row = mysql_fetch_array($result)){ print "<td>".$row["id"]."<td>"; print "<td rowspan=\"2\">".$row["team"]."</td>"; } 値を配列に格納し、array_uniqueで出来るかと思ったのですが 出来ず…。 希望出力 1. 西武ライオンズ 2. 巨人 お分かりになる方がいらっしゃいましたら ご教授お願い致します。
- 画像描画と一般の関数は同じphpファイルには書けないのでしょうか?
画像描画と一般の関数は同じphpファイルには書けないのでしょうか? 再びお世話になります。 phpで100以下の素数の数だけ、四角い黒い画像を横に並べて表示としています。 できれば、素数の数字の中身を画像の中に書き込めれば良いのですが、 どうしても文字化けなどしてうまくいきません。 以下のソースを打つと、黒い図形のみが表示されます。 どのように解決したらよいでしょうか?お願いいたします。 コードは以下のようになります(ご参考までに) <?php function draws() { header ("Content-type: image/png"); $image = imagecreatetruecolor(30,35); $bcolor = imagecolorallocate($image, 255,255,255); $fcolor = imagecolorallocate($image, 0,0,0); imagepng($image); imagecolordeallocate($image, $bcolor); imagecolordeallocate($image, $fcolor); imagedestroy($image); } function testprint1() { for ($i = 0; $i < 100; $i++) { printf("%d\n", $i); } } function testprint2() { printf("333333333333333333333333333333333333"); } draws(); testprint1(); testprint2(); ?>
- ベストアンサー
- -q7P2izb__
- PHP
- 回答数1
- MYSQLでPHPから画像表示したい
以下でPHPとMYSQLにて画像jpgを表示できたのですが、 header("Content-type: image/jpeg"); $result = mysql_query("SELECT * FROM test"); $row = mysql_fetch_assoc($result); print ($row['image']);これだけなら表示OK。 しかし、 テーブルタグの中にprint ($row['image']);をいれたり while文で囲んだりすると、文字の羅列になってしまいます。好きな場所にprint ($row['image']);で表示するには どうしたらいいのでしょうか?
- MYSQLでPHPから画像表示したい
以下でPHPとMYSQLにて画像jpgを表示できたのですが、 header("Content-type: image/jpeg"); $result = mysql_query("SELECT * FROM test"); $row = mysql_fetch_assoc($result); print ($row['image']);これだけなら表示OK。 しかし、 テーブルタグの中にprint ($row['image']);をいれたり while文で囲んだりすると、文字の羅列になってしまいます。好きな場所にprint ($row['image']);で表示するには どうしたらいいのでしょうか?
- PHP+MYSQLの画像の書き込み
PHPでMYSQLにblob型へJPGを格納したいのですが、<INPUT type="file" name="file">でPOSTしたのを insert文で$_POST['file']で書き込んでもMYSQLのテーブルを見ても書き込まれていません。 base64でエンコードしないとだめなのでしょうか? 簡単なサンプルが知りたいです。
- PHP+MYSQLの画像の書き込み
PHPでMYSQLにblob型へJPGを格納したいのですが、<INPUT type="file" name="file">でPOSTしたのを insert文で$_POST['file']で書き込んでもMYSQLのテーブルを見ても書き込まれていません。 base64でエンコードしないとだめなのでしょうか? 簡単なサンプルが知りたいです。
- PHP+MYSQLの画像の書き込み
PHPでMYSQLにblob型へJPGを格納したいのですが、<INPUT type="file" name="file">でPOSTしたのを insert文で$_POST['file']で書き込んでもMYSQLのテーブルを見ても書き込まれていません。 base64でエンコードしないとだめなのでしょうか? 簡単なサンプルが知りたいです。
- phpでデータベースのデータ書換え
現在phpでデータベース(postgresql)を扱える勉強中なんですが、 テーブルの一覧を表示して、そこから指定のレコードを選択して、そのデータを書き換えて上書きしたいのですが、どのようにしたらいいのかお手上げです。 一部分を書き換える方法も分かりましたし、一覧の表示の仕方も分かったのですが、一覧表示から選択し表示したテーブルを、表示だけでなくその状態で書換えできる状態にして、書き換えたレコードを丸ごと上書きしたいのですが、なかなか参考にできるサイトが見つからずに困っています。 おすすめのサイトでもあれば教えていただけないでしょうか。
- XAMPを使っているのですが、論理演算子がうまく機能しません。
XAMPを使って、PHPプログラムの練習をしています。 論理演算子を試しているですが、本に書いてあるような結果に なりません。phpバージョンはPHP 5.3.0です。 $f = true; $g = false; $h = $f and $g; $i = $g and $f; echo "result:".$h; $hも$gも同じように結果は空白になるはずなのですが、$hのほうは 1が返ってきます。なにが原因なのでしょうか?よろしくお願いします。
- ベストアンサー
- noname#191924
- PHP
- 回答数3
- データ型textのcsvインポート
環境 Apache2 PostgreSQL8 PHP5 EUC-JP PostgreSQLのデータ型textにて入力したデータをcsvダウンロードし、 再度csvをアップロードし取り込むプログラムを作成しております。 データ型textなので改行コードや長文のデータがあります。 csvファイルにてダウンロードする際、 \nを↑、\rをブランクに変換してcsvファイルを作成し、 csvファイルをアップロードする際は、 mb_convert_encodingにてcsvファイルのsjisをeuc-jpに変換をしております。 ほとんどのデータが問題なくアップロードできるのですが、 syntax error at or near "," というエラーが出る場合があります。 これはどのような場合に出るのでしょうか? 抽象的な質問かもしれませんが、よろしくお願いします。