- POSTEADO POR WAO -
Dime si es correcto, quiero asegurarme para no meter la gamba hasta el fondo.
phpMyAdmin:
ALTER TABLE comments ADD downloadid int(10) NOT NULL DEFAULT 0
submit.php (script comentarios):
Código PHP:
mysql_query("INSERT INTO comments(name,email,website,body,parentid,approval,hash,downloadid)
VALUES (
'".$input['name']."',
'".$input['email']."',
'".$input['website']."',
'".$input['body']."',
'".$input['parentid']."',
'$approval',
'".mysql_escape_string($hash)."',
'".$input['downloadid']."'
)");
form.php (script comentarios):
Código HTML:
<input type="hidden" name="downloadid" id="parentid" value="0" />
comment.class.php (script comentarios):
[PHP]public function gather_comments($admin, $downId, $bol = false) //añadido $downId y $bol
{
global $config;
$comment = '';
$order = $config['sort'];
// check if we're displaying for the admin domain
if ($admin) {
$fetch = mysql_query("SELECT * FROM comments WHERE approval = 'P' ORDER BY IF(parentid = 0, id, parentid), id ASC");
if (mysql_num_rows($fetch) > 0) {
$comment .= '<li><h4>These comments are awaiting your approval:</h4></li>';
}
else {
$comment .= '<li><h4>There are no pending comments.</h4></li>';
}
}
else {
//-------------------------------------
$fetch = mysql_query("SELECT * FROM comments WHERE approval = 'Y' AND downloadid=".$downId." ORDER BY IF(parentid = 0, id, parentid) $order, id ASC");
if($bol) return mysql_num_rows($fetch);
//-------------------------------------
if (mysql_num_rows($fetch) > 0) {
while ($row = mysql_fetch_assoc($fetch)) {
$comment .= $this->construct_html_comment($row, $admin);
}
}
else {
$comment .= '<li><h3>No comments</h3></li>';
}
}
return '
<div id="comments-container">
<ul>
'.$comment.'
</ul>
</div>
';
} [/PHP]
[B]ando perdido con esto que me ha posteado...[/B]
[QUOTE]para recuperar los mensajes de cada descarga...
$fecth = mysql_query("SELECT * FROM comments WHERE approval = 'Y' AND downloadid=[valor id de la descarga] ORDER BY IF(parentid = 0, id, parentid) $order, id ASC");
para saber el numero de mensajes de cada descarga...
$numero = mysql_num_rows($fetch);
resumiendo...
index.php...
[PHP]<?php
$fetch_downloads = true;
$fetch_order = "id DESC";
include "funcs.php";
//-----------------------------------------------------
require "comments.class.php";
$mensajes = new comments();
//-----------------------------------------------------
?>[/PHP]
[PHP]<?php
foreach($downloads as $dl) {
//---------------------------
$num_mens = $mensajes->gather_comments(false, $dl[id], true);
//---------------------------
?>[/PHP] [/QUOTE]