Ver Mensaje Individual
  #5 (permalink)  
Antiguo 29/04/2013, 13:56
Avatar de Dekadence
Dekadence
 
Fecha de Ingreso: junio-2011
Mensajes: 15
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: Eliminar pagina

Facil, simplemente cuando se borre una página debes borrar todo lo que le es relativo, en este caso los likes, para ello modifica la función de borrado por esta:
Código PHP:
Ver original
  1. function deleteit($page_id) {
  2.         global $client;
  3.         need_login();
  4.         $res = sql_query("select * from ".tb()."pages where id='{$page_id}'");
  5.         $page = sql_fetch_array($res);
  6.         if (!$page['id']) die("wrong page id");
  7.         if ($page['uid'] != $client['id'] && !allow_access(3)) {
  8.             die('access denied');
  9.         }
  10.         if ($_POST['confirm']) {
  11.             sql_query("delete from ".tb()."pages where id='{$page_id}'");
  12.             sql_query("delete from ".tb()."page_users where pid='{$page_id}'");
  13.             $res = sql_query("select id from ".tb()."stories where page_id='{$page_id}'");
  14.             while ($story = sql_fetch_array($res)) {
  15.                 $res2 = sql_query("select * from ".tb()."story_photos where sid='{$story['id']}'");
  16.                 while ($photo = sql_fetch_array($res2)) {
  17.                     @unlink($photo['uri']);
  18.                     @unlink($photo['thumb']);
  19.                     sql_query("delete from ".tb()."story_photos where id='{$photo['id']}'");
  20.                 }
  21.                 sql_query("delete from ".tb()."stories where id='{$story['id']}'");
  22.                 sql_query("delete from ".tb()."tag_ids where sid='{$story['id']}'");
  23.             }
  24.             sql_query("delete from ".tb()."streams where wall_id='{$page_id}'");
  25.             redirect('pages/mine');
  26.         }
  27.         set_title(h($page['name']));
  28.         c('
  29.            <form action="'.url('pages/deleteit/'.$page['id']).'" method="post">
  30.        '.t('Page').': '.url('page/'.$page['uri'],h($page['name'])).'<br /><br />
  31.        <strong>'.t('Are you sure to delete this Page?').'</strong><br />
  32.        '.t('All posts,blogs,photos,videos under this page will be deleted too.').'
  33.        <br /><br />
  34.        <input type="hidden" name="confirm" value="1" />
  35.        <input type="hidden" name="page_id" value="'.$page['id'].'" />
  36.        <input type="submit" value="'.t('Delete it anyway').'" class="fbutton" />
  37.        </form>
  38.        ');
  39.     }
Para que se vea mejor, pongo aquí la linea que he agregado, en la linea 12 de la función superior:
Código PHP:
Ver original
  1. sql_query("delete from ".tb()."page_users where pid='{$page_id}'");
He deducido la query de tu función de unlike, de todos modos si no es esa, debes agregar la query que elimine los likes de la BD.

Un saludo ^^