私はオンラインプロジェクト「今週の質問」を持っています。このプロジェクトでは、ユーザーが質問を送信できます。これらの質問はmysqlテーブルに保存されます。質問は、phpBBに質問を保存する別のsimplepost.phpにも送信されます。このphpBBをすべての質問に使用し、その質問に関するディスカッションに使用したいと思います。
だから今、私のプロジェクトは質問をsqlテーブルに保存し、phpBBに質問を投稿します。
ただし、質問がphpBBに投稿されると、「http://servername.com/phpBB3/viewtopic.php?f=5&t=24」に保存されます。ここで、t=24が質問です。
どういうわけか、このURLを取得してt = 24を抽出したいので、プロジェクト内の各質問にクリック可能なリンクを設定して、特定のphpBBページの質問に誘導できます。
私のプロジェクトが次の場所にあるとします:http ://servername.com/qotw/profile.html (これにより、ユーザーは質問を投稿でき、質問はSQLテーブルに挿入され、phpBB/simplepost.phpを呼び出すと質問が投稿されます。 phpBB)
phpでのこの質問は次の場所で見ることができます: " http://servername.com/phpBB3/viewtopic.php?f=5&t=24 "
どうしたらいいか教えてください。このURLからこの「t=24」を取得するにはどうすればよいですか。
simplepost.phpが呼び出されると、posting.phpを使用して質問が投稿され、戻り値が返されます。
simplepost.phpのコードは次のようになります。
$title = "This is the title of the message.";
//$body = "This is the message body.";
$post_fields = array(
'subject' => $title,
'addbbcode20' => 100,
'message' => $body,
'lastclick' => $lclick[0],
'post' => 'Submit',
'attach_sig' => 'on',
'creation_time' => $lclick[0],
'form_token' => $security123[1],
'filecomment' => '',
);
//Wait (you might also do this by setting lastclick in the past by 3 seconds
sleep(3);
//Set up curl session for posting the message
$ch1 = curl_init();
curl_setopt($ch1, CURLOPT_URL,$purl);
curl_setopt($ch1, CURLOPT_POST, true);
curl_setopt($ch1, CURLOPT_POSTFIELDS, $post_fields);
curl_setopt($ch1, CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch1, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch1, CURLOPT_HEADER, false );
curl_setopt($ch1, CURLOPT_COOKIE,'cookie.txt');
curl_setopt($ch1, CURLOPT_COOKIEJAR,'cookie.txt');
curl_setopt($ch1, CURLOPT_COOKIEFILE,'cookie.txt');
$result2= curl_exec ($ch1);
//$result3= curl_exec ($ch1, CURLOPT_URL,$purl);
curl_close ($ch1);
echo $result2;
応答は$result2になります。ページはhttp://servername.com/phpBB3/viewtopic.php?f=5&t=24 "に移動します。
しかし、問題はこれがすべてバックエンドで起こっているということです。私のプロジェクトでは、phpBBのviewtopic.phpページが表示されません。