UmJammer の回答履歴

全398件中21~40件表示
  • 画像のアップロードについての質問です。

    画像を「物件番号_1.jpg」のように格納したいんですが、 以下のソースの * -------------- */ /* -- 保存する -- */ /* -------------- */ echo "保存対象:[".$add_temp."]<br>\n"; echo "保存先:[".$upfile_updir.$bukken_no."_".$get_count.$type."]<br>\n"; if( move_uploaded_file( $add_temp, $upfile_updir.$bukken_no."_".$get_count.$type ) == FALSE ) のところで echo "添付ファイルの格納に失敗しました。<br>\n"; に行ってしまいます。 どこに原因があるのか教えてください。 <?php $add_temp = $_FILES['up_fl']['tmp_name']; $add_name = $_FILES['up_fl']['name']; $add_type = $_FILES['up_fl']['type']; echo "temp:[".$add_temp."]<br>\n"; echo "name:[".$add_name."]<br>\n"; echo "type:[".$add_type."]<br>\n"; $extension = pathinfo($add_name, PATHINFO_EXTENSION); echo "拡張子:[".$extension."]<br>"; /* -- データベース接続 -- */ $db = mysql_connect(localhost,・・); $db_selected = mysql_select_db(・・・); /* 配列を用意 */ $select_arr = array(); /**********************************/ /* 保存する */ /**********************************/ if( $_POST['action'] == "hozon" ) { $upfile = $_FILES['up_fl']; echo "upfile:".$upfile."<br>\n"; echo "add_name:".$add_name."<br>\n"; $bukken_no = $_POST['no']; $upfile_updir = "../bu_img/"; /* -- ファイルタイプを確認 -- */ if($extension == "gif") { $type = ".gif"; } ・・・・ ・・・・ /*------------------------------------*/ /* -- 物件写真につける番号を調べる -- */ /*------------------------------------*/ $sql_cmd = ""; $sql_cmd = "SELECT MAX( count ) AS max_count FROM BU_IMG WHERE bukken_no = \"".$bukken_no."\""; mysql_query( $sql_cmd ); if( !( $rs = mysql_query( $sql_cmd ) ) ) die; while( $row = mysql_fetch_array( $rs ) ) $get_count = $row['max_count']; if( $get_count == "" ) { $get_count = "1"; } else { $get_count ++; } /* -------------- */ /* -- 保存する -- */ /* -------------- */ echo "保存対象:[".$add_temp."]<br>\n"; echo "保存先:[".$upfile_updir.$bukken_no."_".$get_count.$type."]<br>\n"; if( move_uploaded_file( $add_temp, $upfile_updir.$bukken_no."_".$get_count.$type ) == FALSE ) { /* エラー処理 */ echo "添付ファイルの格納に失敗しました。<br>\n"; echo "管理者にお問い合わせ下さい。<br>\n"; } else { /* -- 物件写真の番号&名前を格納 -- */ $sql_cmd = ""; $sql_cmd = "INSERT INTO BU_IMG ( bukken_no, bukken_img, count ) VALUES( \"".$upfile."\",".$upfile_updir.$bukken_no."_".$get_count.$type."\",".$get_count."\")"; if( !( $rs = mysql_query( $sql_cmd ) ) ) die; /* -- データベース切断 -- */ mysql_close($db); } } ?> <table width="740" border="1" cellpadding="15" bordercolor="#333333" align="center" cellspacing="0"> <form name=form1 method=post action="get_bk_img.php" enctype="multipart/form-data"> <tr> <td bgcolor="#00CCFF">ファイル選択</td> <td bgcolor="#FFFFFF"> <input type=file name="up_fl" value=""> <input type=hidden name=action value=hozon> <input type=hidden name=no value="<?php print($_POST['no']) ?>" > <input type=submit value="保存"> </td> ・・・・ ・・・・

    • ベストアンサー
    • s_mac_ts
    • PHP
    • 回答数5
  • 画像のアップロードについての質問です。

    画像を「物件番号_1.jpg」のように格納したいんですが、 以下のソースの * -------------- */ /* -- 保存する -- */ /* -------------- */ echo "保存対象:[".$add_temp."]<br>\n"; echo "保存先:[".$upfile_updir.$bukken_no."_".$get_count.$type."]<br>\n"; if( move_uploaded_file( $add_temp, $upfile_updir.$bukken_no."_".$get_count.$type ) == FALSE ) のところで echo "添付ファイルの格納に失敗しました。<br>\n"; に行ってしまいます。 どこに原因があるのか教えてください。 <?php $add_temp = $_FILES['up_fl']['tmp_name']; $add_name = $_FILES['up_fl']['name']; $add_type = $_FILES['up_fl']['type']; echo "temp:[".$add_temp."]<br>\n"; echo "name:[".$add_name."]<br>\n"; echo "type:[".$add_type."]<br>\n"; $extension = pathinfo($add_name, PATHINFO_EXTENSION); echo "拡張子:[".$extension."]<br>"; /* -- データベース接続 -- */ $db = mysql_connect(localhost,・・); $db_selected = mysql_select_db(・・・); /* 配列を用意 */ $select_arr = array(); /**********************************/ /* 保存する */ /**********************************/ if( $_POST['action'] == "hozon" ) { $upfile = $_FILES['up_fl']; echo "upfile:".$upfile."<br>\n"; echo "add_name:".$add_name."<br>\n"; $bukken_no = $_POST['no']; $upfile_updir = "../bu_img/"; /* -- ファイルタイプを確認 -- */ if($extension == "gif") { $type = ".gif"; } ・・・・ ・・・・ /*------------------------------------*/ /* -- 物件写真につける番号を調べる -- */ /*------------------------------------*/ $sql_cmd = ""; $sql_cmd = "SELECT MAX( count ) AS max_count FROM BU_IMG WHERE bukken_no = \"".$bukken_no."\""; mysql_query( $sql_cmd ); if( !( $rs = mysql_query( $sql_cmd ) ) ) die; while( $row = mysql_fetch_array( $rs ) ) $get_count = $row['max_count']; if( $get_count == "" ) { $get_count = "1"; } else { $get_count ++; } /* -------------- */ /* -- 保存する -- */ /* -------------- */ echo "保存対象:[".$add_temp."]<br>\n"; echo "保存先:[".$upfile_updir.$bukken_no."_".$get_count.$type."]<br>\n"; if( move_uploaded_file( $add_temp, $upfile_updir.$bukken_no."_".$get_count.$type ) == FALSE ) { /* エラー処理 */ echo "添付ファイルの格納に失敗しました。<br>\n"; echo "管理者にお問い合わせ下さい。<br>\n"; } else { /* -- 物件写真の番号&名前を格納 -- */ $sql_cmd = ""; $sql_cmd = "INSERT INTO BU_IMG ( bukken_no, bukken_img, count ) VALUES( \"".$upfile."\",".$upfile_updir.$bukken_no."_".$get_count.$type."\",".$get_count."\")"; if( !( $rs = mysql_query( $sql_cmd ) ) ) die; /* -- データベース切断 -- */ mysql_close($db); } } ?> <table width="740" border="1" cellpadding="15" bordercolor="#333333" align="center" cellspacing="0"> <form name=form1 method=post action="get_bk_img.php" enctype="multipart/form-data"> <tr> <td bgcolor="#00CCFF">ファイル選択</td> <td bgcolor="#FFFFFF"> <input type=file name="up_fl" value=""> <input type=hidden name=action value=hozon> <input type=hidden name=no value="<?php print($_POST['no']) ?>" > <input type=submit value="保存"> </td> ・・・・ ・・・・

    • ベストアンサー
    • s_mac_ts
    • PHP
    • 回答数5
  • セッション機能がうまく動きません

    PHPでセッション機能を使おうとしています。 PHPはセッション無しで問題なく表示されますが、session_start();を最初に入れると何も表示されなくなります。 php.iniのセッションの部分ははデフォルトのままになっています。 導入に関してなにか設定が必要なんでしょうか? またそのようなエラーログはどうやってみたらいいのでしょうか? PHPに関して参考になるHPなども教えてもらえたら幸いです。 よろしくお願いします。

    • ベストアンサー
    • akeira23
    • PHP
    • 回答数2
  • 画像のアップロードについての質問です。

    画像を「物件番号_1.jpg」のように格納したいんですが、 以下のソースの * -------------- */ /* -- 保存する -- */ /* -------------- */ echo "保存対象:[".$add_temp."]<br>\n"; echo "保存先:[".$upfile_updir.$bukken_no."_".$get_count.$type."]<br>\n"; if( move_uploaded_file( $add_temp, $upfile_updir.$bukken_no."_".$get_count.$type ) == FALSE ) のところで echo "添付ファイルの格納に失敗しました。<br>\n"; に行ってしまいます。 どこに原因があるのか教えてください。 <?php $add_temp = $_FILES['up_fl']['tmp_name']; $add_name = $_FILES['up_fl']['name']; $add_type = $_FILES['up_fl']['type']; echo "temp:[".$add_temp."]<br>\n"; echo "name:[".$add_name."]<br>\n"; echo "type:[".$add_type."]<br>\n"; $extension = pathinfo($add_name, PATHINFO_EXTENSION); echo "拡張子:[".$extension."]<br>"; /* -- データベース接続 -- */ $db = mysql_connect(localhost,・・); $db_selected = mysql_select_db(・・・); /* 配列を用意 */ $select_arr = array(); /**********************************/ /* 保存する */ /**********************************/ if( $_POST['action'] == "hozon" ) { $upfile = $_FILES['up_fl']; echo "upfile:".$upfile."<br>\n"; echo "add_name:".$add_name."<br>\n"; $bukken_no = $_POST['no']; $upfile_updir = "../bu_img/"; /* -- ファイルタイプを確認 -- */ if($extension == "gif") { $type = ".gif"; } ・・・・ ・・・・ /*------------------------------------*/ /* -- 物件写真につける番号を調べる -- */ /*------------------------------------*/ $sql_cmd = ""; $sql_cmd = "SELECT MAX( count ) AS max_count FROM BU_IMG WHERE bukken_no = \"".$bukken_no."\""; mysql_query( $sql_cmd ); if( !( $rs = mysql_query( $sql_cmd ) ) ) die; while( $row = mysql_fetch_array( $rs ) ) $get_count = $row['max_count']; if( $get_count == "" ) { $get_count = "1"; } else { $get_count ++; } /* -------------- */ /* -- 保存する -- */ /* -------------- */ echo "保存対象:[".$add_temp."]<br>\n"; echo "保存先:[".$upfile_updir.$bukken_no."_".$get_count.$type."]<br>\n"; if( move_uploaded_file( $add_temp, $upfile_updir.$bukken_no."_".$get_count.$type ) == FALSE ) { /* エラー処理 */ echo "添付ファイルの格納に失敗しました。<br>\n"; echo "管理者にお問い合わせ下さい。<br>\n"; } else { /* -- 物件写真の番号&名前を格納 -- */ $sql_cmd = ""; $sql_cmd = "INSERT INTO BU_IMG ( bukken_no, bukken_img, count ) VALUES( \"".$upfile."\",".$upfile_updir.$bukken_no."_".$get_count.$type."\",".$get_count."\")"; if( !( $rs = mysql_query( $sql_cmd ) ) ) die; /* -- データベース切断 -- */ mysql_close($db); } } ?> <table width="740" border="1" cellpadding="15" bordercolor="#333333" align="center" cellspacing="0"> <form name=form1 method=post action="get_bk_img.php" enctype="multipart/form-data"> <tr> <td bgcolor="#00CCFF">ファイル選択</td> <td bgcolor="#FFFFFF"> <input type=file name="up_fl" value=""> <input type=hidden name=action value=hozon> <input type=hidden name=no value="<?php print($_POST['no']) ?>" > <input type=submit value="保存"> </td> ・・・・ ・・・・

    • ベストアンサー
    • s_mac_ts
    • PHP
    • 回答数5
  • セッション機能がうまく動きません

    PHPでセッション機能を使おうとしています。 PHPはセッション無しで問題なく表示されますが、session_start();を最初に入れると何も表示されなくなります。 php.iniのセッションの部分ははデフォルトのままになっています。 導入に関してなにか設定が必要なんでしょうか? またそのようなエラーログはどうやってみたらいいのでしょうか? PHPに関して参考になるHPなども教えてもらえたら幸いです。 よろしくお願いします。

    • ベストアンサー
    • akeira23
    • PHP
    • 回答数2
  • 画像のアップロードについての質問です。

    画像を「物件番号_1.jpg」のように格納したいんですが、 以下のソースの * -------------- */ /* -- 保存する -- */ /* -------------- */ echo "保存対象:[".$add_temp."]<br>\n"; echo "保存先:[".$upfile_updir.$bukken_no."_".$get_count.$type."]<br>\n"; if( move_uploaded_file( $add_temp, $upfile_updir.$bukken_no."_".$get_count.$type ) == FALSE ) のところで echo "添付ファイルの格納に失敗しました。<br>\n"; に行ってしまいます。 どこに原因があるのか教えてください。 <?php $add_temp = $_FILES['up_fl']['tmp_name']; $add_name = $_FILES['up_fl']['name']; $add_type = $_FILES['up_fl']['type']; echo "temp:[".$add_temp."]<br>\n"; echo "name:[".$add_name."]<br>\n"; echo "type:[".$add_type."]<br>\n"; $extension = pathinfo($add_name, PATHINFO_EXTENSION); echo "拡張子:[".$extension."]<br>"; /* -- データベース接続 -- */ $db = mysql_connect(localhost,・・); $db_selected = mysql_select_db(・・・); /* 配列を用意 */ $select_arr = array(); /**********************************/ /* 保存する */ /**********************************/ if( $_POST['action'] == "hozon" ) { $upfile = $_FILES['up_fl']; echo "upfile:".$upfile."<br>\n"; echo "add_name:".$add_name."<br>\n"; $bukken_no = $_POST['no']; $upfile_updir = "../bu_img/"; /* -- ファイルタイプを確認 -- */ if($extension == "gif") { $type = ".gif"; } ・・・・ ・・・・ /*------------------------------------*/ /* -- 物件写真につける番号を調べる -- */ /*------------------------------------*/ $sql_cmd = ""; $sql_cmd = "SELECT MAX( count ) AS max_count FROM BU_IMG WHERE bukken_no = \"".$bukken_no."\""; mysql_query( $sql_cmd ); if( !( $rs = mysql_query( $sql_cmd ) ) ) die; while( $row = mysql_fetch_array( $rs ) ) $get_count = $row['max_count']; if( $get_count == "" ) { $get_count = "1"; } else { $get_count ++; } /* -------------- */ /* -- 保存する -- */ /* -------------- */ echo "保存対象:[".$add_temp."]<br>\n"; echo "保存先:[".$upfile_updir.$bukken_no."_".$get_count.$type."]<br>\n"; if( move_uploaded_file( $add_temp, $upfile_updir.$bukken_no."_".$get_count.$type ) == FALSE ) { /* エラー処理 */ echo "添付ファイルの格納に失敗しました。<br>\n"; echo "管理者にお問い合わせ下さい。<br>\n"; } else { /* -- 物件写真の番号&名前を格納 -- */ $sql_cmd = ""; $sql_cmd = "INSERT INTO BU_IMG ( bukken_no, bukken_img, count ) VALUES( \"".$upfile."\",".$upfile_updir.$bukken_no."_".$get_count.$type."\",".$get_count."\")"; if( !( $rs = mysql_query( $sql_cmd ) ) ) die; /* -- データベース切断 -- */ mysql_close($db); } } ?> <table width="740" border="1" cellpadding="15" bordercolor="#333333" align="center" cellspacing="0"> <form name=form1 method=post action="get_bk_img.php" enctype="multipart/form-data"> <tr> <td bgcolor="#00CCFF">ファイル選択</td> <td bgcolor="#FFFFFF"> <input type=file name="up_fl" value=""> <input type=hidden name=action value=hozon> <input type=hidden name=no value="<?php print($_POST['no']) ?>" > <input type=submit value="保存"> </td> ・・・・ ・・・・

    • ベストアンサー
    • s_mac_ts
    • PHP
    • 回答数5
  • 画像の保存についての質問です。

    ----get_bk_img.php---- ・・・・・ ・・・・・ <table width="740" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td> <a href="../index.html">TOP PAGE</a><br><br> <strong>保存する物件の写真を設定してください</strong><br> <?php $add_temp = $_FILES['up_fl']['tmp_name']; $add_name = $_FILES['up_fl']['name']; $add_type = $_FILES['up_fl']['type']; echo "temp:[".$add_temp."]<br>\n"; echo "name:[".$add_name."]<br>\n"; echo "type:[".$add_type."]<br>\n"; /*------------------------*/ /* -- データベース接続 -- */ /*------------------------*/   ・・・・・・・・   ・・・・・・・・   ・・・・・・・・ /*------------------------*/ /* -- データベース切断 -- */ /*------------------------*/ mysql_close($db); ?> <table width="740" border="1" cellpadding="15" bordercolor="#333333" align="center" cellspacing="0"> <form name=form1 method=post action=get_bk_img.php> <tr> <td bgcolor="#00CCFF">ファイル選択</td> <td bgcolor="#FFFFFF"> <input type=file name=up_fl value=""> <input type=hidden name=action value=hozon> <input type=hidden name=no value="<?php print($_POST['no']) ?>" > <input type=submit value="保存"> </td> </tr> </form> </table> <br> <table width="740" border="1" cellpadding="15" bordercolor="#333333" align="center" cellspacing="0"> <form name="form1" method="post" action="get_bk_img.php"> <tr> <td bgcolor="#00CCFF">保存ファイル一覧</td> <td bgcolor="#FFFFFF"> <select name="bu_file"> <?php print_r( $select_arr ) ?> </select> <input type="hidden" name="action" value="delete"> <input type="submit" value="削除"> </td> </tr> </form> </table> </table> </body> </html> としてるんですが、 echo "temp:[".$add_temp."]<br>\n"; echo "name:[".$add_name."]<br>\n"; echo "type:[".$add_type."]<br>\n"; の部分で表示されません。(値が空?) 書き方が間違ってますか?

    • ベストアンサー
    • s_mac_ts
    • PHP
    • 回答数2
  • 画像の保存についての質問です。

    ----get_bk_img.php---- ・・・・・ ・・・・・ <table width="740" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td> <a href="../index.html">TOP PAGE</a><br><br> <strong>保存する物件の写真を設定してください</strong><br> <?php $add_temp = $_FILES['up_fl']['tmp_name']; $add_name = $_FILES['up_fl']['name']; $add_type = $_FILES['up_fl']['type']; echo "temp:[".$add_temp."]<br>\n"; echo "name:[".$add_name."]<br>\n"; echo "type:[".$add_type."]<br>\n"; /*------------------------*/ /* -- データベース接続 -- */ /*------------------------*/   ・・・・・・・・   ・・・・・・・・   ・・・・・・・・ /*------------------------*/ /* -- データベース切断 -- */ /*------------------------*/ mysql_close($db); ?> <table width="740" border="1" cellpadding="15" bordercolor="#333333" align="center" cellspacing="0"> <form name=form1 method=post action=get_bk_img.php> <tr> <td bgcolor="#00CCFF">ファイル選択</td> <td bgcolor="#FFFFFF"> <input type=file name=up_fl value=""> <input type=hidden name=action value=hozon> <input type=hidden name=no value="<?php print($_POST['no']) ?>" > <input type=submit value="保存"> </td> </tr> </form> </table> <br> <table width="740" border="1" cellpadding="15" bordercolor="#333333" align="center" cellspacing="0"> <form name="form1" method="post" action="get_bk_img.php"> <tr> <td bgcolor="#00CCFF">保存ファイル一覧</td> <td bgcolor="#FFFFFF"> <select name="bu_file"> <?php print_r( $select_arr ) ?> </select> <input type="hidden" name="action" value="delete"> <input type="submit" value="削除"> </td> </tr> </form> </table> </table> </body> </html> としてるんですが、 echo "temp:[".$add_temp."]<br>\n"; echo "name:[".$add_name."]<br>\n"; echo "type:[".$add_type."]<br>\n"; の部分で表示されません。(値が空?) 書き方が間違ってますか?

    • ベストアンサー
    • s_mac_ts
    • PHP
    • 回答数2
  • 二次元配列のforeachはどうすれば?

    <form action="form_check.php" method="POST"> <input type="checkbox" name="check[]" value="aaaa"> <input type="checkbox" name="check[]" value="bbbb"> <input type="checkbox" name="check[]" value="cccc"> <input type="submit" value="送信"> </form> フォームでこのように送りました このデータを受け取り、1つにまとめたいのですが foreach($_POST[check] as $val){ if($all){ $all .= ",".$val; }else{ $all = $val; } } このようにしてみたところ Warning: Invalid argument supplied for foreach() とエラーが出ました。 二次元配列でforeachのループをかけるときはどのように記述すればいいのでしょうか。

    • ベストアンサー
    • choei
    • PHP
    • 回答数2
  • メール送信フォームの形

    メール送信プログラムを組んでいます。 一括送信や1件送信なら問題ないのですが、フォームでチェックを入れた顧客にだけまとめて送信する場合のやり方が浮かんできません。 送信処理の前段階として、顧客を選択する形としてこのようにしてみました。 この前に$scaleに抜き出した顧客数の数を入れてその数だけループさせてます。 for($j=0;$j<$scale;$j++){ $rows=mysql_fetch_array($result[result]); echo "<input type=\"checkbox\" name=\"to[$j]\" value=\"$rows[id]\">$rows[id]:$rows[name]<br />\n"; } このような形でチェックボックスを作ってみたのですが、よく考えるとこれだと・・・$_POST[to[$j]]といった配列の中に配列が入ってしまう形になるので、データとして成り立ってないかなと思うのですが・・・ 多重配列にするのであれば$_POST[to][$j]のような形にならないといけないかと(by 手元の本) name=\"to[$j]\"の部分を単純にname=\"$j\"とし、POSTのデータをループして1つにまとめる方法も考えましたが、それだとIDとは関係のないもの(たとえば$_POST[submit])までがいっしょこたんに入ってしまうので、どう対処していいか分からず困っています。 最終的にはPOSTで受けたデータの中で送信先のIDだけを配列ではない1つの変数(Perlでいうところのスカラー)$mailtoに"xxx@xx.xx; yyy@yyy.yy; zzz@zzz.zz"といった形で整理したいと思います。 使ったことがないのですが多次元配列でやれるかなとも思ったのですが、name=\"to[$j]\"の部分をどう記述して、POSTされたデータをどう受ければいいのかが分かりません。 何をどう聞いていいのかも分からないので、うまく質問をまとめ切れていませんが、これで理解できた方お知恵をお貸しください。

    • ベストアンサー
    • choei
    • PHP
    • 回答数1
  • XAMPP on LINUX (MDB2の利用について)

    こんにちは。LINUX上で動かすXAMPPについて質問があります。 これまで、あるアプリの開発をWindows上のXAMPPで行ってきました。ある程度形になったので、実環境を踏まえ。LINUX上で開発することになりました。OSはCentOS5です。 LINUX版のXAMPPをインストールしたのですが、PHPのPearにMDB2が入っていなかったので、Pear installでMDB2をインストールしました。 Windowsで作ったページをLINUX上に移動し、requireパスを変更してから 動作確認を行ったところ、以下のようなエラーがずらずらと出てきました。Windows版では、正常に稼動していました。 なにか問題があるのでしょうか?どなたか解法をご存知の方、ご教授お願いします。 ---------------------- Deprecated: Assigning the return value of new by reference is deprecated in /opt/lampp/lib/php/MDB2.php on line 390 Strict Standards: Redefining already defined constructor for class MDB2_Driver_Common in /opt/lampp/lib/php/MDB2.php on line 1310 Deprecated: Assigning the return value of new by reference is deprecated in /opt/lampp/lib/php/MDB2.php on line 1885 Deprecated: Assigning the return value of new by reference is deprecated in /opt/lampp/lib/php/MDB2.php on line 2572 Deprecated: Assigning the return value of new by reference is deprecated in /opt/lampp/lib/php/MDB2.php on line 2595 Deprecated: Assigning the return value of new by reference is deprecated in /opt/lampp/lib/php/MDB2.php on line 2940 Strict Standards: Declaration of MDB2_Driver_Common::raiseError() should be compatible with that of PEAR::raiseError() in /opt/lampp/lib/php/MDB2.php on line 3317 Strict Standards: Redefining already defined constructor for class MDB2_Result_Common in /opt/lampp/lib/php/MDB2.php on line 3377 Strict Standards: Redefining already defined constructor for class MDB2_Row in /opt/lampp/lib/php/MDB2.php on line 3850 以下略

    • ベストアンサー
    • sirius2003
    • PHP
    • 回答数2
  • PHPでMySQLに格納したファイルをダウンロードしたいです。

    MySQLサーバに格納したファイルをPHPを使ってブラウザからファイルをダウンロードするプログラムを作りたいのですが、やり方が分からず困っています。方法もしくは簡単なスクリプトを教えてください。お願いします。 PHPを使ってブラウザからMySQLに画像やファイルをアップロードできたのですが、取り出す方法が分かりません。バイナリデータを取り出してimage srcを用い、ブラウザに画像を表示するまではできました。 テーブルは create table image( ID int not null primary key auto_increment, data MEDIUMBLOB); で作成しています。 ご教授お願いします。

    • ベストアンサー
    • jinnichi
    • PHP
    • 回答数1
  • XAMPP on LINUX (MDB2の利用について)

    こんにちは。LINUX上で動かすXAMPPについて質問があります。 これまで、あるアプリの開発をWindows上のXAMPPで行ってきました。ある程度形になったので、実環境を踏まえ。LINUX上で開発することになりました。OSはCentOS5です。 LINUX版のXAMPPをインストールしたのですが、PHPのPearにMDB2が入っていなかったので、Pear installでMDB2をインストールしました。 Windowsで作ったページをLINUX上に移動し、requireパスを変更してから 動作確認を行ったところ、以下のようなエラーがずらずらと出てきました。Windows版では、正常に稼動していました。 なにか問題があるのでしょうか?どなたか解法をご存知の方、ご教授お願いします。 ---------------------- Deprecated: Assigning the return value of new by reference is deprecated in /opt/lampp/lib/php/MDB2.php on line 390 Strict Standards: Redefining already defined constructor for class MDB2_Driver_Common in /opt/lampp/lib/php/MDB2.php on line 1310 Deprecated: Assigning the return value of new by reference is deprecated in /opt/lampp/lib/php/MDB2.php on line 1885 Deprecated: Assigning the return value of new by reference is deprecated in /opt/lampp/lib/php/MDB2.php on line 2572 Deprecated: Assigning the return value of new by reference is deprecated in /opt/lampp/lib/php/MDB2.php on line 2595 Deprecated: Assigning the return value of new by reference is deprecated in /opt/lampp/lib/php/MDB2.php on line 2940 Strict Standards: Declaration of MDB2_Driver_Common::raiseError() should be compatible with that of PEAR::raiseError() in /opt/lampp/lib/php/MDB2.php on line 3317 Strict Standards: Redefining already defined constructor for class MDB2_Result_Common in /opt/lampp/lib/php/MDB2.php on line 3377 Strict Standards: Redefining already defined constructor for class MDB2_Row in /opt/lampp/lib/php/MDB2.php on line 3850 以下略

    • ベストアンサー
    • sirius2003
    • PHP
    • 回答数2
  • PHP->MySQLに漢字データが渡らない

    Fedora11の自家サーバー&「ウェブDYIで行こう!たのしいPHP入門」という書籍で、PHPのお勉強をしています。下記のコードで「佐藤」という漢字データがMySQLに渡りません。satoに変更すると、問題なく渡ります。MySQLの文字コードはUTF-8に設定しています。(全てUTF-8で統一しているつもり)文字化けではなく、print_r($result);のところで、nameフィールドは何も表示されません。htmlソースを見ても、何も存在していない様に見えます。 (注)書籍のコードに、しつこい位UTF-8の記述を足してみておりますが、足す前も同様でした。 <html><body> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <pre><?php ini_set("default_charset", "UTF-8"); $dsn = "mysql:host=localhost;dbname=xxxxxx"; $user = "xxxxxx"; $password = "*******"; $db = new PDO($dsn, $user, $password); $db->exec("SET NAMES utf8"); $insert_query = "INSERT INTO users (name, email) " ."VALUES ('佐藤','sato@example.com')"; $db->exec($insert_query); $result = $db->query("SELECT * FROM users")->fetchAll(); print_r($result); ?> </body></html> 最初php.iniは初期値のままでやっていて、下記記事を参考に http://hain.jp/index.php/tech-j 次の通り設定してみましたが、事態は変わりませんでした。 output_buffering = Off ; default_charset = EUC-JP mbstring.language = Japanese mbstring.encoding_translation = off mbstring.http_input = pass mbstring.http_output = pass mbstring.internal_encoding = UTF-8 mbstring.substitute_character = none mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII 原因と対策がお分かりの方がいらっしゃいましたら、御教示のほど、よろしくお願いします。

    • ベストアンサー
    • mitarashi
    • PHP
    • 回答数1
  • mb_http_output()のあと、サーバーにより挙動が違う

    対処はしたのですが、すこし腑に落ちない点があります。 MySQL、PHPすべての文字コードをUTF-8にしています。 しかし携帯がShift-JISなので、出力時に帳尻を合わすためmb_http_output()を使いました。  $str="内容は、METAタグのContentも含め全部UTF-8のHTMLソースです。";  mb_http_output("Shift_JIS");  $str=str_replace('content="text/html; charset=utf-8"','content="text/html; charset=Shift_JIS"',$str);  exit($str); テストサーバーでは正常にShift_JISで表示されました。 携帯でも確認済みです。 しかし実際のサーバー(さくらインターネットのスタンダード)だと 2行目と3行目の間に  mb_convert_encoding($str,'SJIS','UTF-8'); を挟まないとUTF-8のまま出力されてしまいます。 php.iniでmbstring.*はすべて同じ値にしましたが 違いは埋まりませんでした。 環境設定で何が違うと、 このようなことが生じるのでしょうか?

    • ベストアンサー
    • scaddi231
    • PHP
    • 回答数1
  • 画像のアップロードができない

    PHPで携帯サイトを制作中なのですが、メールで画像をアップロードする ことができずに困っております。 具体的にはサーバーにファイル自体はアップロードされるのですが img配下を見ると「ev4rVY(エンコードされたファイル名)」がサーバーにアップされているものの、拡張子がついていないのです。 ▼画像アップロードプログラムPHPソース // ユーザー&認証コードチェック if ($user&&$auth_code==getAuthCode($user['id'], $user['auth_string'])) { // 認証OK // マルチパートの場合のみメールを解析して画像を取得 if (strtolower($structure->ctype_primary) == "multipart") { $images = getImage($structure->parts); } $image_save_path = null; // 画像リストの中から1つだけ画像を取得する foreach ($images as $image) { // コンテンツタイプのチェック if ($image['type'] == 'image/jpeg' || $image['type'] == 'image/gif' || $image['type'] == 'image/png') { // ファイルとして保存 // 一時ファイルパス $temp_path = tempnam('/tmp', 'img_'); if ($temp_path == false) { // error break; } $fp = fopen($temp_path, 'w'); if ($fp == false) { // error break; } fwrite($fp, $image['body']); fclose($fp); // 画像の形式と縦横サイズを取得 list($width, $height, $type) = getimagesize($temp_path); // 認識できる形式であれば、所定のメソッドで開く $imageSource = null; if ($type == IMAGETYPE_GIF) { $imageSource = imagecreatefromgif($temp_path); } else if ($type == IMAGETYPE_JPEG) { $imageSource = imagecreatefromjpeg($temp_path); } else if ($type == IMAGETYPE_PNG) { $imageSource = imagecreatefrompng($temp_path); } // 一時ファイルを消す unlink($temp_path); if ($imageSource) { // ファイル名決定 $path = tempnam($image_dir, ''); //unlink($path); $image_save_path = $path; // 画像をケータイディレクトリへファイル保存 imagejpeg($imageSource, $image_save_path); imagedestroy($imageSource); break; } } } ▲以上ここまで━━━━━━━━━━━━━━━━━━━━━━━━━ 開発環境:CentOS5 PHP Version 5.2.11 ※本を参考に制作しているのですが  本にはGD Graphics をダウンロードした方がよいと  記載がありました。関係ありますでしょうか。 どなたかお分かりになる方がいらっしゃいましたらどうか ご教授いただけませんでしょうか。 お願いいたします。

    • ベストアンサー
    • ham64600
    • PHP
    • 回答数2
  • お問い合わせフォーム sessionについて

    自分でお問い合わせフォームを作ってみようと思い、 PHPでちょこちょこと色々なサイトを参考に作成してみています。 なかなか進まず、今つまずいているのが、sessionです。 お問い合わせを書き込んだ画面から確認画面に移行したいのですが、 移行した後の入力情報がうまく表示できません。 <?php session_start(); $check = 1; $em = ""; $name = $_POST["name"]; $mail = $_POST["mail"]; $tel = $_POST["tel"]; $naiyo = $_POST["naiyo"]; //エラーチェック if ($name == "") { $check = 0; $em = "<li>お名前をご記入ください。</li>"; } if ($mail == "" && $tel == "") { $check = 0; $em .= "<li>メールアドレスまたは、電話番号をご記入ください。</li>"; } if ($mail != "") { if (!ereg("[a-zA-Z0-9_.¥-]+@[a-zA-Z0-9_.¥-]+", $mail)) { $check = 0; $em .= "<li>メールアドレスをお確かめください。</li>"; } } if ($naiyo == "") { $check = 0; $em .= "<li>お問い合わせ内容をご記入ください。</li>"; } if (!$check) { $em = "<ul>".$em."</ul>"; } else { $_SESSION["name"] = $name; $_SESSION["mail"] = $mail; $_SESSION["tel"] = tel; $_SESSION["naiyo"]= naiyo; header("Location: confirm.php"); } ?> 確認ページ <?php session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <META name="GENERATOR" content="IBM WebSphere Studio Homepage Builder Version 10.0.0.0 for Windows"> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> <TITLE></TITLE> </HEAD> <BODY> 名前 <?php echo($_SESSION["name"]); ?><br> メールアドレス<?php echo($_SESSION["mail"]); ?><br> </BODY> </HTML> 全くの初心者ですので根本的に分かっておらず、教えがいがないかも 知れませんが...。すみません。よろしくお願いします。

    • ベストアンサー
    • denverinco
    • PHP
    • 回答数1
  • PHPの文字コード方針の決め方・注意点

    PHPを学んで一ヶ月の初心者です。 そろそろ実際に開発を行おうと思っているのですが、 自分の中での文字コードの方針がまとまらないので、 アドバイス頂きたいです。 文字化けに関する解釈があいまいだと、 今後、文字化けに泣きそうな気がするので…;; 現状は、Moabletypeをよく使うので、 htmlの文字コードは、ほぼutf-8を利用しています。 文字コードに関して、サイトや本でいろいろ調べていると、 今後は、PHP周辺の文字コードをutf-8を中心に考えていった方が良いようにお見受けしました。 ただ、よく使っているサーバーがXサーバーで mysqlの文字コード設定がeuc-jpのようですので、 下記のような考え方で間違いないか不安に思っています。。 -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* PHP(プログラムファイル) →utf-8 Mysql → euc-jp パソコンの出力先ページ(html、php) → utf-8 携帯の出力先ページ → shift-jis -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* ローカルでの開発段階、 また、mysqlがEUC-jpサーバーへの実装等などを考えた場合の、 各ファイルの文字コードの考え方。 また、1つの開発システム内で、 複数の文字コードを扱う際の注意点などあればご教授ください。 よろしくお願いいたしますm(;;)m

    • ベストアンサー
    • imo787
    • PHP
    • 回答数2
  • 携帯サイトの画像アップロード

    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@(ドメイン名)を見ると受信はできています。他に必要な情報などございましたら是非ご連絡いただけますと幸いです。どなたかお助けください。どうかお願いいたします。

    • ベストアンサー
    • ham64600
    • PHP
    • 回答数6
  • 携帯サイトの画像アップロード

    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@(ドメイン名)を見ると受信はできています。他に必要な情報などございましたら是非ご連絡いただけますと幸いです。どなたかお助けください。どうかお願いいたします。

    • ベストアンサー
    • ham64600
    • PHP
    • 回答数6