Проблем с взимане на id-то на снимката.

joorkataa

Registered
Здравейте имам проблем с взимането на id-то на снимката под която пиша коментар тоест искам когато напиша коментар в таблицата с коментарите comments полето picid да се записва номера на снимката която съм коментирал .... обаче нещо не се получава ето кода


PHP:
<?php
error_reporting(E_ALL^E_NOTICE);
include "comment.class.php";
$comments = array();
$result = mysql_query("SELECT * FROM comments ORDER BY id DESC LIMIT 3");
while($row = mysql_fetch_assoc($result))
{
$comments[] = new Comment($row);
}
?>


<link rel="stylesheet" type="text/css" href="styles.css" />
<h2><a href="#">test test test test test »</a></h2>
<div id="main">
<?php
foreach($comments as $c){echo $c->markup();}
?>
<div id="addCommentContainer">
	<p>Добави Коментар</p>
	<form id="addCommentForm" method="post" action="">
    	<div>
            <label for="body">Коментар</label>
            <textarea name="body" id="body" cols="20" rows="5"></textarea>
            
            <input type="submit" id="submit" value="Добави" />
        </div>
    </form>
</div>
</div>

Ето така ми изглежда адреса когато съм в страницата със снимката

localhost/pictures_view.php?image_id=15

image_id=15 е id-то на снимката и искам когато добавя коментара да се добавя и това id 15 в полето picid :)

А с този код записвам в mysql-a

PHP:
<?php 
define('IN_PHPBB', true); 
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : 'forums/'; 
$phpEx = substr(strrchr(__FILE__, '.'), 1); 
include($phpbb_root_path . 'common.' . $phpEx); 
include($phpbb_root_path . 'includes/functions_display.' . $phpEx); 

// Започва сесията
$user->session_begin(); 
$auth->acl($user->data); 
$user->setup('viewforum'); 
?>
<?php

// Намира грешки:
error_reporting(E_ALL^E_NOTICE);

include "config.php";
include "comment.class.php";

$arr = array();
$validates = Comment::validate($arr);
$user_id = $user->data['user_id'];
$username = $user->data['username'];
if($validates)
{
	
	mysql_query("INSERT INTO comments(name,uid,picid,body) VALUES ( '$username', '$user_id', '$image_id', '".$arr['body']."' )");
	
	$arr['dt'] = date('r',time());
	$arr['id'] = mysql_insert_id();
	
	
	$arr = array_map('stripslashes',$arr);
	
	$insertedComment = new Comment($arr);

	echo json_encode(array('status'=>1,'html'=>$insertedComment->markup()));

}
else
{
	echo '{"status":0,"errors":'.json_encode($arr).'}';
}

?>
 
image_id го взимаш от $_GET


Ето това ти е кода който трябва да сложиш във pictures_view.php:

PHP:
$snimkaid=(int)$_GET['image_id'];
echo $snimkaid;
 
eddyy93 каза:
image_id го взимаш от $_GET


Ето това ти е кода който трябва да сложиш във pictures_view.php:

PHP:
$snimkaid=(int)$_GET['image_id'];
echo $snimkaid;

Да но проблема е че се записва от 2 рия код който съм дал ето я заявката


PHP:
mysql_query("INSERT INTO comments(name,uid,picid,body) VALUES ( '$username', '$user_id', '$image_id', '".$arr['body']."' )");
 
А, искаш да кажеш, че са на 2 отделни файла, картинката и коментарите?

Тогава става с $_GET и $_POST.
Като на $_POST ще приема стойност от hidden поле.
Тоест:

page1.php
PHP:
// погледни формата задал съм action към comment.php
//погледни пред последното поле



$snimkaid=(int)$_GET['image_id'];

//Това ти е примерна post форма

echo "<form method='post' action='comment.php' > 
<input type='text' name='ime' />
<textarea  name='comment' rows='40' cols='40'></textarea>
<input type='hidden' name='picid' value=' ".$snimkaid." ' />
<input type='submit' name='submit' value='submit' />

";

comment.php

PHP:
if(isset($_POST['submit'])) {

$imgid=$_POST['picid'];

//imgid вече е приела ид то на картинката от първият файл.

}
 

Back
Горе