Как при постраничном выводе данных выделить текущую страницу, не оформляя ее ссылкой?

Ekaterina

Новичок
Добрый день, помогите, пожалуйста, разобраться с оформлением ссылок при постраничном выводе.
Последовательность действий в коде:
index.php:
PHP:
...
<script type="text/javascript" src="core.js"></script>
<script type="text/javascript" src="js/jquery.min.js"></script>
...
<script type="text/javascript">
show_page('1');
show_pagination();
....
</script>
core.js
PHP:
//Вывод сообщений на странице
function show_page(page) {
  $(document).ready(function(){
    $.ajax({
      type: "POST",
       url: "ajax_proc.php",
	   data: "page="+page,
       success: function(answ){
          $("#content").empty().append(answ);
               
       }
    });         
  });
}

//Разбивка на страницы
function show_pagination() {
  $(document).ready(function(){
    $.ajax({
      type: "POST",
       url: "ajax_proc.php",
	   data: "pagination=",
       success: function(answ){
         $("#pagination").empty().append(answ);
       }
    });
  });
}
ajax_proc.php:
PHP:
<?php
require_once('core.php');
...
if(isset($_POST['pagination'])) {
  	echo 'Страницы:&nbsp';
    for ($i = 1; $i <= pages_count(); $i++) {
       echo '<a class="current" href="#" onclick="show_page('.$i.')">'.$i.'</a>';
       echo '&nbsp&nbsp&nbsp';
    }
  }
...
?>
core.php:
PHP:
<?php
require_once('db/db.php');

$c = parse_ini_file("settings.ini");

function show_page($page) {
  global $db;
  global $c;
  $offset = $page * $c['limit'] - $c['limit'];
  $STH = $db->prepare("SELECT users.login, users.last_ip, users.photo, posts.id, posts.msg, posts.datetime FROM users 
                       JOIN posts ON users.id = posts.user_id 
                       ORDER BY posts.datetime DESC 
                       LIMIT :offset,:limit");
  
  $STH->bindValue(':offset', (int) $offset, PDO::PARAM_INT);
  $STH->bindValue(':limit', (int) $c['limit'], PDO::PARAM_INT);  
  $STH->execute();
  
  $dberr = $STH->errorInfo();
  if ($dberr[0] != '00000') {
    if ($c['debug'] == 1) {
      return $dberr;
    }
    else {
      $msg0 = "Гостевая книга временно не работает [0]";
      return $msg0;
    }
  }
  else {
    return $STH->fetchAll();
  }
}
.....
?>
Нужно, чтобы работало так:
PHP:
<html>
	<head>
	<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
	<script type="text/javascript" language="javascript">
	$(document).ready(function() {
	    $('a').click(function() {
	        $('a').css('text-decoration', 'underline');
	        $(this).css('text-decoration', 'none');
	        return false;
	    });
	});
	</script>
	</head>
	<body>
	<a href="#">text 1</a><br />
	<a href="#">text 2</a><br />
	<a href="#">text 3</a><br />
	<a href="#">text 4</a><br />
	</body>
</html>
Понимаю, что мне надо повесить что-то подобное на click по моей ссылке, но у меня там уже функция по выводу сообщений на страницу. Я не очень разбираюсь в css и js. Делаю тестовой задание - написать гостевую книгу. Сдавать завтра, а я зависла на этом вопросе. Читала вот тут Пагинатор, но про оформление я там не нашла. Помогите, пожалуйста.
 

zerkms

TDD infected
Команда форума
Тестовые задания для того и нужны - чтобы показать ваши навыки.

Ваши навыки таковы, что вы не можете выполнить задание в полном объёме. Так что не пытайтесь обмануть своего будущего работодателя - это не лучшее начало деловых отношений.
 

Ekaterina

Новичок
Тестовые задания для того и нужны - чтобы показать ваши навыки.

Ваши навыки таковы, что вы не можете выполнить задание в полном объёме. Так что не пытайтесь обмануть своего будущего работодателя - это не лучшее начало деловых отношений.
Если я разберусь, как это делается, это тоже будет обман? Две недели назад, я понятия не имела, что такое гостевая книга и с чего начинать ее писать. По Вашему, я должна была сразу отказаться от тестового задания, потому что на момент получения задания, было бы ложью утверждать, что я знаю как его делать?

А Вы всегда сразу знаете, как и что должны делать, алгоритм, и технологии?

И все равно, спасибо за ответ :)
 

Вурдалак

Продвинутый новичок
Мне вот интересно почему в коде на onclick стоит JS-функция, а вы показываете нам PHP-функцию.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
Если я разберусь, как это делается, это тоже будет обман? Две недели назад, я понятия не имела, что такое гостевая книга и с чего начинать ее писать.
Ни за день, ни за неделю это не изучить. Программирование - не хобби, а серьезная профессия, как юриспруденция или финансы.

По Вашему, я должна была сразу отказаться от тестового задания, потому что на момент получения задания, было бы ложью утверждать, что я знаю как его делать?
Сначала - изучить основы, читать статьи, потом - идти работать.
Обмануть вы не сможете, выставите себя дурочкой, или им пофиг и вы застрянете на плохой работе, обвиняя начальника, хотя виноваты будете только вы сами.

А Вы всегда сразу знаете, как и что должны делать, алгоритм, и технологии?
Мы все сначала учимся, читаем документацию, потом спрашиваем, потом работаем.
Я не берусь за работу, в которой я ламер.

Помогать дурака валять - не в традициях программистов.

P.S.
Закройте кто-нибудь тему - для наглядности.
 

Ekaterina

Новичок
Мне вот интересно почему в коде на onclick стоит JS-функция, а вы показываете нам PHP-функцию.
Спасибо за вопрос. Я в первом посте отредактировала код.

Сделала так:

В файле core.js: дописала в функцию show_page(page) - так как она получает ответ от ajax_proc.php после клика по ссылке:
PHP:
//Вывод сообщений на странице
function show_page(page) {
  $(document).ready(function(){
    $.ajax({
      type: "POST",
       url: "ajax_proc.php",
	   data: "page="+page,
       success: function(answ){
          $("#content").empty().append(answ);

  ////////////////////////////Изменение стиля ссылки страницы///////////////////      
          $('a.current').click(function() {
 	         $('a.current').css('text-decoration', 'underline');
 	         $(this).css('text-decoration', 'none');
 	         return false;
 	      });
////////////////////////////////////////////////////////////////////////////////////////////////////////////
       }
    });         
  });
}
Так верно?
 
Сверху