PHP
- URLの相対パスについて
はじめまして、疑問に思ったことがあるので質問させて下さい。 参考:http://look2.info/sampl2/ 上記URLのような掲示板の作成を考えているのですがこの掲示板の仕様は特殊なようで、 参考2:http://look2.info/r.php/sampl2/57/ のように実際には存在しないフォルダをr.phpでURLを分解して表示しています。 そして参考2のソースを表示すると ハートの画像部分が <img src="/_gif_/63890.gif" border=0> と指定されていてこの画像の絶対パスは http://look2.info/_gif_/63890.gif になります ここで疑問が出てきたのですが、ソースを見る限りでは「BASE HREF」の指定も無いのに、IMG SRCでは相対パスで書かれています。 このURLの場合通常だと、「../../../_gif_/63890.gif」と指定しないとブラウザでは認識しない筈なのですがプログラムで上記のようなことは出来るのでしょうか?? 詳しい方がいればご教授お願いいたしますm(_ _)m
- 画像ファイルの添付
php4.3.7 WinXP 画像ファイルの添付メール送信ロジックを下記サイトを参考にして組んでます。 http://masataka.mailbbs.com/php/sendmail/ やはり添付ファイルのロジックでつまづいてしまいました。 ユーザー関数 function sendmail($from, $to, $replyto, $subject, $message, $headers, $files = NULL) で処理を行っているのですが、下記の注釈があります。 $files … 添付ファイルを連想配列の数配列で指定します(省略可) →$file['filename'] … ファイル名を指定します →$file['nameencode'] … ファイル名のエンコードを指定します(省略可) →$file['binary'] … ファイルのバイナリを指定します これを下記のようにしたのですがバイナリ指定でエラーがでます。 エラー原因のご教授をお願い致します。 $_POST['photo']は画像ファイルです。 $files = array ("filename" => $_POST['photo'], "binary" => "GIF89a($files[0])" );
- 端末振り分け PHPについて
No.818802で話題になっていた振り分けプログラムについて index.php の詳細を教えていただけないでしょうか? .htaccessの変更はしました。 PHP4バージョンです。 i.html j.html pc.html ez.hdml へ飛ばしたいと思います。 初心者なので注意事項等アドバイすいただければ幸いです。
- サーバーOS、バージョンの差異?フォームリクエストについて。
こんばんわ。 現在PHPを使って動的なページを作成しています。 そこで問題です! あるサイトには・・・GETやPOSTなどで飛ばしたデータを「$a」などという形で取得できると説明していますが、ある別のサイトでは、POSTであれば「$_POST["a"] 」でGETでは「$_GET["a"]」というように異なる説明をしています。 実際、私が開発用に用意したサーバーでは後者のやり方でしか取得できませんでした。 これは何が違うからなのでしょう? 私が持っている参考資料では前者であり、意味がわからずあせっています! 前者で出来るようにしたいのですが・・・。 宜しくお願いいたします。
- 複数同時アクセスついて
おはようございます。 PHPでブラウザ上でデータベースの更新するページを作成しました。 今、問題があって、Aさんがデータを更新するため、作業をしていて、その間にBさんも作業をするためページを開きました。 Bさんが作業終了してデータを更新して、その後Aさんが更新するといった形で複数同時アクセス時にデータの書き換えでこまっています。 こういった場合、編集ページを排他処理にしたいのですがどのようなものがありますでしょうか? すみませんがお願い致します。 参考になるページもあればお願い致します。
- array_push関数について
array_push関数を使って配列に追加していくことはできるのですが、多次元配列に追加する方法がわかりません。 WEBマニュアルを見ても詳しく書かれておらず困っています。 array_push関数で多次元配列に追加していくことはできるのでしょうか? できるのであれば簡単な書式をご伝授ください。 よろしくお願いします。
- ループ処理について。
下記のようなプログラムを作りました。 機能としては同じDB内にある異なるテーブルの日付を比較し、 違うものがあれば挿入するというものです。 ただしこの場合ではうまくいきません。 (1)テーブルの値を順に読み取り、 (2)にあるテーブル全ての行に対応させ、 ある行に値があれば、ループをぬけて そのsql文には空にするという形にしたいのですが、 このままですと条件文だけしかぬけていません。。。 何かよい方法があればご教授お願いいたします。 //比較するテーブル・・・(1) for($i=0;$i<$num;$i++){ $num_i=(レコードを取得する関数); //挿入するテーブル・・・(2) for($j=0;$j<$num;$j++)} $num_j=(レコードを取得する関数); //日付が同じでなければ挿入する if($num_i["start_date"] != $num_j["start_date"] && $num_i["end_date"] != $num_j["end_date"]){ $sql[$i]="INSERT INTO date (start_date,end_date) VALUES(".$num_i["start_date"].",".$num_i["end_date"].");"; } else{ $sql[$i]=""; break; } } if($sql[$i] != ""){ print($sql[$i]); } }
- 画像の並べ方
こんにちは、HTMLフォーム→Postgresで検索→PHPで画像表示というページを作っています。 現在画像が縦に1枚ずつ並ぶのですが、横に4枚並べた後、次の行に表示としたいのです。 テーブルのタグをいろいろ変更してみたのですが思い通りに表示されません。 おかしいところがありましたら教えていただけないでしょうか。 <table><td width="13%">画像</td></tr> <tr> EOF; $result = @pg_Exec($sqlSelect); if ($result == false) { $file_name = __FILE__; $line_id = __LINE__; exit; } for ($i = 0; $i < @pg_Numrows($result); $i++) { $row = @pg_Fetch_Array($result,$i); if ($row['gazou'] == "") { $gazou = " "; } else { $cd = $row['gazouid1']; $gazou = "<a href=\"JavaScript:onClick=wopen('" . $row['gazouid1'] . "','" . $row['gazouid'] . "');\"><img src='../members/" . $row['gazouid1'] . "/img/" . $row['gazou'] . "_s.jpg' border=0 width=150 height=140 align=absmiddle></a>"; } $html .= " <td align=center>" . $gazou . "</td>\n"; $html .= " <tr><td align=center><a href='../members/" . $row['gazouid1'] . "/' target=\"_blank\">" . $row['name'] . "</a></td></tr>\n"; } $html .= <<< EOF </table>
- ベストアンサー
- PHP
- masato0099
- 回答数1
- includeでHTMLファイルを呼出してもブラウザで表示されない
<td><% include("navi.html"); %></td> ブラウザでプレビューしても表示されず、ブラウザでソースを見ても上記のタグのままです。ちゃんと表示される場合はnavi.htmlのソースが見えるはずですよね? PHPがインストールされていないのでは?と思い、2種類のサーバで試しましたが、 PHPがある一方では文字化けするも表示、PHPが怪しいもう一方では上記のタグのままです。 <!--#include file="head.html"-->でも現象は同じでした。 改行コードと文字コードも統一していますし、改善策をどなたかご教授下さい。 ちなみにPHPは詳しくありません。
- IE6で CGIのサンプルを実行すると、ダウンロード画面が表示される
解決方法として下記の「あるサイトの解答」を見つけたのですが、意味が解らず困ってます。 「あるサイトの解答」 エクスプローラの 表示/オプション/プログラム/ファイルタイプ で、MSDOSバッチファイルを選び、編集で内容の種類(MIME)を text/plain にしてください。 質問 IEの表示メニューのオプションって事は、ツールのインターネットオプションでしょうか? プログラムタブの中にはファイルタイプとかの設定がないのです・・・??? どなたか宜しくご教授お願い致します。 PC環境 WinXPにAN httpd と PHP4.3.6をインストールしました。 PHPのiniファイルはCGI版設定
- PHP開発に便利で画期的なDreamWeaverの「ライブデーター表示」を使う
DreamWeaverに、PHPを使った開発に非常に便利で画期的な「ライブデータ表示」という機能があり、GETやPOSTのデータを与えた時の出来上がり画面を確認しつつ、PHP開発が出来るのですが、単にPHPファイルを開いたときは、ちゃんとすべて表示されるのですが、いざ、ライブデータ表示機能を使おうとすると、どういうわけか、PHPでない部分はちゃんと表示されるのに、PHP部分だけが文字化けしてしまいます。 ちなみに、すべてシフトJISを使っています。 これをすべてシフトJISのまま正しく表示するにはどうしたらよいのでしょうか? DreamWeaver MX 2004です。 お願いします。
- 複数ファイルから合計&ソートについて
はじめまして、こんにちわ。 下記の処理がわからなくて困っています(^^; どなたか知恵を貸して頂ければ幸いですm(_ _)m 処理したいのは複数のファイルから合計を出し、数字の大きいものから順番に表示することなのです。 ファイルは各フォルダに同一のファイル名で存在します。 例: ./1/data.dat ./2/data.dat ./3/data.dat といった感じで 各data.datファイルの中身は 例(./1/data.dat): Aさん,56,… Bさん,28,… Cさん,75,… 例(./2/data.dat): Dさん,12,… Eさん,90,… Fさん,100,… といった感じです。 これを数字の大きい人からソートすると F・E・C・A・B・Dさん となるような感じの処理をご教授くださいm(_ _)m
- MySQLへの検索結果に対してaccsesskeyを自動でふりたい
こんにちは、広島の三ツ木です。 MySQLへSQLで検索をかけ、結果を10件ずつ表示させています。 この際に、iモード端末での選択を楽にするために行ごとに自動で accesskeyを1から0までふりたいのですが、よくわかりません。 検索結果はWhile文にて繰り返し表示をさせており、その中のタグ 内部に含める必要があるのですが、どうもうまくいきません。 よろしくお願いします。
- PHPでNULLを表すには
条件式で $data == ○ して ○の部分にデータがないことを指定したいのですが この場合どの様に記述すればよいのでしょうか? やりたいこと GETでデータを受け取るようになっているのですが データを受けたれなかったときには別の処理をさせたいのです。
- データベースのタイミングについて
PHPでとあるデータベースに接続したいのですが、 本番のサーバーのため、 処理を慎重に行いたいと思います。 データベースの処理の流れがよくわかっていないのですが、 処理としては データーベースを接続する Beginする テーブルを作成 大丈夫だったら コミットする 大丈夫じゃなかったら ロールバックする Endする データベースを切断する という処理でいいのでしょうか?? また、データベース上に同じテーブル名などがある場合は CREATを実行したときにエラーを返してくれるのでしょうか??
- エスケープ解除
以下のようなPHP構文の時に、 magic_quotes_gpcがOnであっっとしたら、 どのようにエスケープを解除すればいいのでしょうか? // フォームの値を取得します。 if ($_SERVER["REQUEST_METHOD"] == "POST") { foreach($_POST as $k = $v){ // 「magic_quotes_gpc = On」のときはエスケープ解除 if (get_magic_quotes_gpc()) { $v = stripslashes($v); } $v = htmlspecialchars($v); $$k = $v; } } else { exit(); }
- 文字の入り方について
簡略化していますが、下記のようなプログラムを作成しました。 whileでループし、カウントをとって。 sql文を作成するプログラムです。 $i=0; $j=0; while(!feof($this->fp)){ if($i>=2){ $sql_insert .="INSERT INTO "; $sql_insert .= $sql_value[$i]; $sql_insert .=";"; } $this->num=$j-1; print("<BR>"); print($i); print($sql_insert); $i++;; } この場合、$iは2以上回らないはずなのですが、 print($sql_insertを出力すると、 INSERT INTO (値);INSERT INTO (何も値が入ってない); という結果になります。 if($i>=2)という場合は 2よりも大きい場合はこの処理内をとおるということですよね? 実際は$iは2までしか回っていないのに、何故$sql_insertは余計に表示されているのでしょうか?