Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69

Присвоение ссылок каждому из результатов поиска

03.02.2017, 14:27. Показов 2097. Ответов 38
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Я создал виртуальную БД по клиентам ТСЖ и их задолженности в phpmyadmin, и через поисковую строку на сайте осуществляю поиск по ней, проблема заключается в том, что к каждому результату поиска (ФИО/адрес) необходимо прикрепить ссылку для последующего перехода на страницу оплаты. Я сделал ссылку после каждого клиента ТСЖ и она у всех результатов одинакова. Как сделать так, чтобы для каждого клиента ссылка была уникальной и передавала сумму задолженности на форму оплаты?
PHP
1
echo  "<br>" . "ФИО:" . "&nbsp;" . $row['FIO'] . "<br>" . "Адрес:" . "&nbsp;" . $row['Address'] . "<br>" . "Задолженность:" . "&nbsp;" . $row['Tszh'] . " руб." . "<br>" . "Пени:" . "&nbsp;" . $row['Penitszh'] . " руб." . "<br>" . "<br>".  "<a href=\"index.php\">Выбрать</a>" . "<br>". "<br>";
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.02.2017, 14:27
Ответы с готовыми решениями:

Присвоение свободного номера каждому сотруднику
Добрый день, у нас на фирме есть что то типа табельного номера и до сегодняшнего дня его присваивали каждому просто автоинкрементном....

Присвоение переменных каждому значению в массиве POST
Доброго времени суток! Передаю через аякс на обработчик множество разных переменных и значений. Раньше, когда передавал 1-2 значения, в...

Присвоение каждому элементу массива в виде ссылки своего изображения
Ребят возникла такая проблема,каждой ссылке массива нужно присвоить свое изображение,как это сделать? Приношу огромные извинения за...

38
576 / 514 / 253
Регистрация: 26.09.2010
Сообщений: 2,603
03.02.2017, 16:42
Цитата Сообщение от Ilyaru Посмотреть сообщение
"<a href="index.php">Выбрать</a>"
надо добавить в ссылку id и потом по ней уже выбирать записи
PHP
1
<a href='index.php?id='.$row['id']>Выбрать</a>
0
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69
03.02.2017, 17:26  [ТС]
А допустим, если поиск выдал 1 результат, как сделать так, чтобы при клике на "Выбрать", "сумма тсж" и "пени тсж" вывелись в итоговую сумму в пустое поле, допустим на странице index.php?

Добавлено через 19 минут
Что-то типа этого, только я не знаю как правильно суммировать:
PHP
1
"<input name='itogo' type='text' id='textfield1' value='".$row['Tszh'] + $row['Penitszh']."'></input>"
Хочу попробовать вставить сумму в пустое поле на этой же странице и при изменении полей "Тсж" и "пени тсж" итоговая сумма менялась автоматически. Подскажите пожалуйста.
значения "тсж" и "пени тсж" поставил в поля:
PHP
1
"<input name='tszh' type='text' id='textfield1' value='".$row['Tszh']."'></input>". " руб." . "<br>" . "<br>". "Пени:" . "&nbsp;" . "<input name='penitszh' type='text' id='textfield1' value='".$row['Penitszh']."'></input>". " руб." .
0
Особый статус
 Аватар для FloppyDisc
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
03.02.2017, 19:23
Цитата Сообщение от Ilyaru Посмотреть сообщение
и при изменении полей "Тсж" и "пени тсж" итоговая сумма менялась автоматически
Можно использовать Js:
JavaScript
1
2
3
4
5
function summa(){
var tszh=document.getElementById('textfield1').value;
var penytszh=document.getElementById('textfield2').value;
document.getElementById('summa').value=Number(tszh)*Num ber(penytszh);
}
PHP/HTML
1
<input id="textfield1" value='".$row['Tszh']."' onchange="summa()"><input id="textfield2" value='".$row['Penitszh']."' onchange="summa()"><input id="summa"><br>
Можно и на стороне сервера обрабатывать
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function summa() {
    //отправляю POTS запрос и получаю ответ можно и GET
        var tszh = $('#tszh').val();
        var penytszh = $('#penytszh').val();
$.ajax({
                type: 'POST',
                url: '/summa',
                data: {tszh, penytszh},
                beforeSend: function() {
                    // Перед отправкой выведем уведомление:
                    $('#status').html('<div>Подождите...</div>');
                },
                success: function (data) {
                    $('#summa').html(data);
                },
                error: function (xhr, str) {
                    alert('Возникла ошибка: ' + xhr.responseCode);
                }
            });
А на сервере что-то типа:
PHP
1
2
3
4
if ($_POST){
        return $_POST['tszh'] + $_POST['penytszh'];
 
}
1
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69
01.03.2017, 18:05  [ТС]
PHP
1
echo  "<br>" . "ФИО:" . "&nbsp;" . $row['FIO'] . "<br>"  . "<br>" . "Адрес:" . "&nbsp;" . $row['Address'] . "<br>" . "<br>" . "Задолженность:" . "&nbsp;" . "<input id=a1 value='".$row['Tszh']."' onchange=b()>" . "&nbsp;" . "руб." . "<br>" . "<br>". "Пени:" . "&nbsp;" . "<input id=a2 value='".$row['Penitszh']."' onchange=b()>" . "&nbsp;" . "руб." . "<br>" . "<br>" . "Итого:". "&nbsp;" . "<input id=a3>" . "<br>" . "<br>".  "<a href=\"oplata.php\">Выбрать</a>" . "<br>". "<br>" ;
JavaScript
1
2
3
4
5
6
7
<script>
function b(){
var c1=document.getElementById('a1').value;
var c2=document.getElementById('a2').value;
document.getElementById('a3').value=Number(c1)*Number(c2);
}
</script>
Вот так я переделал.

Но в поле "итого" ничего не выводит, если изменить значения в "задолженность" и "пени", то тоже ничего не происходит.
Подскажите пожалуйста, где я допустил ошибку?

Добавлено через 11 минут
Кстати, при таком варианте, как я понял, общая сумма подсчитывается только после изменения значения в одном из полей, а у меня данные берутся из БД и мне необходимо, чтобы итоговая сумма уже была подсчитана, а уже позже пользователь смог самостоятельно скорректировать сумму.
0
Особый статус
 Аватар для FloppyDisc
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
01.03.2017, 18:56
Попробуйте так:
PHP/HTML
1
2
3
<input type="text" id="a1" name="a1" value= <?= $row['Tszh'] ?> onchange="b()">
<input type="text" id="a2" name="a2" value= <?= $row['Penitszh'] ?> onchange="b()">
<input type="text" id="a3" name="a3" value= <?= $row['Tszh'] + $row['Penitszh']?>>
а так же попробовать так:
JavaScript
1
2
var c1 = $('#a1').val();
var c2 = $('#a2').val();
Добавлено через 6 минут
JavaScript
1
2
var value = c1 + c2;
$('#a3').val(value);
1
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69
01.03.2017, 19:39  [ТС]
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
mysql_connect("localhost", "admin", "") or die("Ошибка подключения к базе");
mysql_select_db("111") or die("База не найдена");
$user_get = $_GET['q'];
iconv("UTF-8", "WINDOWS-1251", $user_get);
//echo $user_get;
if ((isset($user_get))) {
    $sql = mysql_query("SELECT * FROM `testtszh` WHERE `Address` LIKE '%{$user_get}%'");
    if (mysql_num_rows($sql) != 0) {
        while ($row = mysql_fetch_assoc($sql)) {
            echo  "<br>" . "ФИО:" . "&nbsp;" . $row['FIO'] . "<br>"  . "<br>" . "Адрес:" . "&nbsp;" . $row['Address'] . "<br>" . "<br>" . "Задолженность:" . "&nbsp;" . "<input id=a1 value='".$row['Tszh']."' onchange=b()>" . "&nbsp;" . "руб." . "<br>" . "<br>". "Пени:" . "&nbsp;" . "<input id=a2 value='".$row['Penitszh']."' onchange=b()>" . "&nbsp;" . "руб." . "<br>" . "<br>" . "Итого:". "&nbsp;" . "<input id=a3>" . "<br>" . "<br>".  "<a href="oplata.php">Выбрать</a>" . "<br>". "<br>" ; 
        }
        
    } else {
        echo "Не найдено";
    }
 
} else {
    echo "Ничего нет";
}
?>
<script>
function b(){
var c1 = $('#a1').val();
var c2 = $('#a2').val();
var value = c1 + c2;
$('#a3').val(value);
}
</script>
Скинул весь php + js
Переделал, поставил ваш фрагмент:
PHP/HTML
1
2
3
<input type="text" id="a1" name="a1" value= <?= $row['Tszh'] ?> onchange="b()">
<input type="text" id="a2" name="a2" value= <?= $row['Penitszh'] ?> onchange="b()">
<input type="text" id="a3" name="a3" value= <?= $row['Tszh'] + $row['Penitszh']?>>
Стало выдавать ошибку, заменил " на ' и <? обратно на '". в итоге пропали все поля и выводилось некорректное одно значение, вместо всех полей.
А изменения в js не дали результата, также не выводит сумму, если я конечно правильно все записал.
0
Особый статус
 Аватар для FloppyDisc
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
01.03.2017, 20:21
только что проверил работает
PHP/HTML
1
2
3
4
5
6
7
8
<?php $a =1; $b=2 while ($a < $b):?>
<p>ФИО: <?= 'wsws' ?></p>
<p>Адрес: <?= 'Address' ?></p>
<p>Задолженность:</p>
  <input type="text" id="a1" name="a1" value= <?= 1 + $a ?> onchange="b()">
  <input type="text" id="a2" name="a2" value= <?= 2 + $a ?> onchange="b()">
  <input type="text" id="a3" name="a3" value= <?= 1 + 2?>>  
<?php $a++ endwhile; ?>
0
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69
01.03.2017, 20:41  [ТС]
PHP/HTML
1
echo  "<br>" . "ФИО:" . "&nbsp;" . $row['FIO'] . "<br>"  . "<br>" . "Адрес:" . "&nbsp;" . $row['Address'] . "<br>" . "<br>" . "Задолженность:" . "&nbsp;" . "<input type="text" id="a1" name="a1" value= <?= $row['Tszh'] ?> onchange="b()">" . "&nbsp;" . "руб." . "<br>" . "<br>". "Пени:" . "&nbsp;" . "<input type="text" id="a2" name="a2" value= <?= $row['Penitszh'] ?> onchange="b()">" . "&nbsp;" . "руб." . "<br>" . "<br>" . "Итого:". "&nbsp;" . "<input type="text" id="a3" name="a3" value= <?= $row['Tszh'] + $row['Penitszh']?>>" . "<br>" . "<br>".  "<a href="oplata.php">Выбрать</a>" . "<br>". "<br>" ;
Скрин ошибки приложил.
Миниатюры
Присвоение ссылок каждому из результатов поиска  
0
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69
01.03.2017, 20:50  [ТС]
PHP/HTML
1
2
3
4
5
6
7
8
9
10
<?php 
echo "<input id=i1 value=30 onchange=f()><input id=i2 value=3 onchange=f()><input id=i3><br>"
?>      
<script>
function f(){
var n1=document.getElementById('i1').value;
var n2=document.getElementById('i2').value;
document.getElementById('i3').value=Number(n1)*Number(n2);
}
</script>
Самое главное, что вот так работает, а если подставить значения полей из БД то, сумма не выводится.
0
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69
01.03.2017, 22:44  [ТС]
Я не могу открывать php внутри php я же произвожу суммирование уже в нем.
Если я ставлю так:
PHP/HTML
1
echo  "<br>" . "ФИО:" . "&nbsp;" . $row['FIO'] . "<br>"  . "<br>" . "Адрес:" . "&nbsp;" . $row['Address'] . "<br>" . "<br>" . "Задолженность:" . "&nbsp;" . "<input type=text id=a1 name=a1 value='".$row['Tszh']."' onchange=b()>" . "&nbsp;" . "руб." . "<br>" . "<br>". "Пени:" . "&nbsp;" . "<input type=text id=a2 name=a2 value='".$row['Penitszh']."' onchange=b()>" . "&nbsp;" . "руб." . "<br>" . "<br>" . "Итого:". "&nbsp;" . "<input type=text id=a3 name=a3 value='".$row['Tszh']+$row['Penitszh']."'>" . "<br>" . "<br>".  "<a href="oplata.php">Выбрать</a>" . "<br>". "<br>" ;
То появляется вот это:
Миниатюры
Присвоение ссылок каждому из результатов поиска  
0
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69
01.03.2017, 22:47  [ТС]
А должно быть так:
Миниатюры
Присвоение ссылок каждому из результатов поиска  
0
Особый статус
 Аватар для FloppyDisc
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
01.03.2017, 23:40
А что мешает сделать так:
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
mysql_connect("localhost", "admin", "") or die("Ошибка подключения к базе");
mysql_select_db("111") or die("База не найдена");
$user_get = $_GET['q'];
iconv("UTF-8", "WINDOWS-1251", $user_get);
//echo $user_get;
 
if ((isset($user_get))) :
    $sql = mysql_query("SELECT * FROM `testtszh` WHERE `Address` LIKE '%{$user_get}%'");
    
    if (mysql_num_rows($sql) != 0): 
    
        while ($row = mysql_fetch_assoc($sql)): ?>
            <p>ФИО: <?= $row['FIO'] ?></p>
            <p>Адрес: <?= $row['Address'] ?></p>
            <p>Задолженность:</p>
            <input type="text" id="a1" name="a1" value= <?= $row['Tszh'] ?> onchange="b()">
            <input type="text" id="a2" name="a2" value= <?= $row['Penitszh'] ?> onchange="b()">
            <input type="text" id="a3" name="a3" value= <?= $row['Tszh'] + $row['Penitszh'] ?>> 
    <?php endwhile;
        
    else:
       echo "Не найдено";
    endif;
 
else:
  echo "Ничего нет";
endif;
?>
Вроде бы все лучше, чем работать через echo.

З.Ы и поскольку у вас получается много групп инпутов с одинаковыми id, то js часть придется переделать под эти нужды иначе будет работать только первая группа...
1
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69
02.03.2017, 00:06  [ТС]
Спасибо большое!
Но теперь считает общую сумму при загрузке страницы, но не считает, если изменять значения в полях.
Попробовал все ваши варианты js, ни один не работает с данным кодом, попробовал переписать 3-й инпут, убрал значение и поставил уже в js суммирование, тоже не работает. Как можно еще попробовать?
0
Особый статус
 Аватар для FloppyDisc
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
02.03.2017, 14:30
Цитата Сообщение от Ilyaru Посмотреть сообщение
но не считает, если изменять значения в полях.
Да, просто надо изменить js на примерно следующее:
JavaScript
1
2
3
4
5
6
7
function b(group){
        //var $self = $(this);
        var c1 = $('#a1'+group).val();
        var c2 = $('#a2'+group).val();
        var value = Number(c1) + Number(c2);
        $('#a3'+group).val(value);
    }
А так же подкорректировать вывод:
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
mysql_connect("localhost", "admin", "") or die("Ошибка подключения к базе");
mysql_select_db("111") or die("База не найдена");
$user_get = $_GET['q'];
iconv("UTF-8", "WINDOWS-1251", $user_get);
//echo $user_get;
 
if ((isset($user_get))) :
    $sql = mysql_query("SELECT * FROM `testtszh` WHERE `Address` LIKE '%{$user_get}%'");
    
    if (mysql_num_rows($sql) != 0): 
$a =0; 
while ($row = mysql_fetch_assoc($sql)): $a++ ?>
<p>ФИО: <?= $row['FIO'] ?></p>
<p>Адрес: <?= 'Address' ?></p>
<p>Задолженность:</p>
  <input type="text" id="a1<?= $a?>" name="a1<?= $a?>" value= <?= $row['Tszh'] ?> onkeyup="b(<?= $a?>)">
  <input type="text" id="a2<?= $a?>" name="a2<?= $a?>" value= <?= $row['Penitszh'] ?> onkeyup="b(<?= $a?>)">
  <input type="text" id="a3<?= $a?>" name="a3<?= $a?>" value= <?= $row['Tszh'] + $row['Penitszh'] ?>>  
<?php endwhile;
        
    else:
       echo "Не найдено";
    endif;
 
else:
  echo "Ничего нет";
endif;
?>
Проверил - все работает
1
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69
03.03.2017, 03:24  [ТС]
Вот что у меня получилось:
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
mysql_connect("localhost", "admin", "") or die("Ошибка подключения к базе");
mysql_select_db("111") or die("База не найдена");
$user_get = $_GET['q'];
iconv("UTF-8", "WINDOWS-1251", $user_get);
//echo $user_get;
 
if ((isset($user_get))) :
    $sql = mysql_query("SELECT * FROM `testtszh` WHERE `Address` LIKE '%{$user_get}%'");
    
    if (mysql_num_rows($sql) != 0): $a =0; 
while ($row = mysql_fetch_assoc($sql)): $a++ ?>
<p>ФИО: <?= $row['FIO'] ?></p>
<p>Адрес: <?= $row['Address'] ?></p>
    Задолженность:
  <input type="text" id="a1<?= $a?>" name="a1<?= $a?>" value= <?= $row['Tszh'] ?> onkeyup="b(<?= $a?>)">
    Пени:
  <input type="text" id="a2<?= $a?>" name="a2<?= $a?>" value= <?= $row['Penitszh'] ?> onkeyup="b(<?= $a?>)">
    Итого:
  <input type="text" id="a3<?= $a?>" name="a3<?= $a?>" value= <?= $row['Tszh'] + $row['Penitszh'] ?>>  
<?php endwhile;
        
    else:
       echo "Не найдено";
    endif;
 
else:
  echo "Ничего нет";
endif;
?>
    <script>
function b(group){
        //var $self = $(this);
        var c1 = $('#a1'+group).val();
        var c2 = $('#a2'+group).val();
        var value = Number(c1) + Number(c2);
        $('#a3'+group).val(value);
    }
</script>
Сумма все также не хочет меняться при изменении полей. Убрал из комментариев ваш var - безрезультатно.
Проверьте пожалуйста, может быть я что-то упустил?
Попробовал на обычных значениях (не полях таблицы) тоже почему-то не работает, но это видимо я что-то не так сделал.
0
Особый статус
 Аватар для FloppyDisc
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
03.03.2017, 21:44
Можете скинуть дамп базы данных?
Проверил опять, просто копернув ваш код и поменяв значения на обычные цифры - работает.
У вас jquery подключен? Этот скрипт вообще показывает какую-нибудь реакцию? Если да, то попробуйте все это тупо обернуть в форму:
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<body>
<?php
mysql_connect("localhost", "admin", "") or die("Ошибка подключения к базе");
mysql_select_db("111") or die("База не найдена");
$user_get = $_GET['q'];
iconv("UTF-8", "WINDOWS-1251", $user_get);
//echo $user_get;
if ((isset($user_get))) :
    $sql = mysql_query("SELECT * FROM `testtszh` WHERE `Address` LIKE '%{$user_get}%'");
    
    if (mysql_num_rows($sql) != 0): $a =0; ?>
 
<form id="form" action="javascript:void(null);" >
 
<?php
 
while ($row = mysql_fetch_assoc($sql)): $a++ ?>
<p>ФИО: <?= $row['FIO'] ?></p>
<p>Адрес: <?= $row['Address'] ?></p>
    Задолженность:
  <input type="text" id="a1<?= $a?>" name="a1<?= $a?>" value= <?= $row['Tszh'] ?> onkeyup="b(<?= $a?>)">
    Пени:
  <input type="text" id="a2<?= $a?>" name="a2<?= $a?>" value= <?= $row['Penitszh'] ?> onkeyup="b(<?= $a?>)">
    Итого:
  <input type="text" id="a3<?= $a?>" name="a3<?= $a?>" value= <?= $row['Tszh'] + $row['Penitszh'] ?>>  
<?php endwhile; ?>
 
</form>
 
<?php
 
else:
       echo "Не найдено";
    endif;
 
else:
  echo "Ничего нет";
endif;
?>
 
<script type="text/javascript">
    function b(group){
        //var $self = $(this);
        var c1 = $('#a1'+group).val();
        var c2 = $('#a2'+group).val();
        var value = Number(c1) + Number(c2);
        $('#a3'+group).val(value);
    }
</script>
 
</body>
1
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69
04.03.2017, 14:47  [ТС]
Да, конечно, файл приложил.
Как я понял, я просто неверно заменил поля таблицы на обычные цифры, потому что остальные скрипты начинали работать и работают (создал тестовый файл, в котором проверяю и экспериментирую с js и не только)
Также приложу основной скрипт поиска по бд, вдруг он как-то связан с проблемой.
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<html>
<head>
<title> ТСЖ Оплата </title>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8;">
<link rel="stylesheet" type="text/css" href="site.css">
<script type="text/javascript">
function showHint(str) {
    if (str.length == 0) {
        document.getElementById("test").innerHTML = "";
        return;
    }
    if (window.XMLHttpRequest) { // Код для IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp = new XMLHttpRequest();
    } else { // Код для for IE6, IE5
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange = function () {
        if (xmlhttp.readyState == 4) // если передача данных закончена то..
        {
            if (xmlhttp.status == 200) // если ответ сервера 200 ок то
            {
                // вставляем в элемент ID="test"
                document.getElementById("test").innerHTML = xmlhttp.responseText; 
            } else //если ответ сервера не 200 то
            {
                // выдаем соообщение
                alert('Ошибка подключения сервера'); 
            }
        } else //если данные с сервера не загружены то
        {
            // вставляем в элемент ID="test"
            document.getElementById("test").innerHTML = 'Загрузка...';
        }
    }
    // отправляем методом GET файлу getuser.php
    xmlhttp.open("GET","getuser.php?q="+encodeURIComponent(str),true);
    xmlhttp.send();
}
</script>
</head>
<body>
 
<p><b>Пожалуйста, введите адрес по образцу: "Проспект Строителей 1-99" :</b></p>
<form>
<input type="text" onkeyup="showHint(this.value)" size="20" />
</form>
<p><span id="test"></span></p>
 
</body>
</html>
попробуйте все это тупо обернуть в форму
Попробовал, также ничего не изменилось.
Вложения
Тип файла: rar 111.rar (911 байт, 2 просмотров)
0
Особый статус
 Аватар для FloppyDisc
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
04.03.2017, 19:09
Ilyaru, все работает, проблема видимо в том, что вы не подключили JQuery, либо подключите его:
HTML5
1
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
и используйте этот вариант:
JavaScript
1
2
3
4
5
6
7
function b(group){
        //var $self = $(this);
        var c1 = $('#a1'+group).val();
        var c2 = $('#a2'+group).val();
        var value = Number(c1) + Number(c2);
        $('#a3'+group).val(value);
    }
иначе вот этот:
JavaScript
1
2
3
4
5
6
function b(group){
        var c1 = document.getElementById('a1'+group).value;
        var c2 = document.getElementById('a2'+group).value;
        var value = Number(c1) + Number(c2);
        document.getElementById('a3'+group).value = value;
    }
Кликните здесь для просмотра всего текста
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
$con = mysqli_connect("localhost", "root", "") or die("Ошибка подключения к базе");
mysqli_select_db($con, "new") or die("База не найдена");
$user_get = 1;
iconv("UTF-8", "WINDOWS-1251", $user_get);
//echo $user_get;
 
if ((isset($user_get))) :
    $sql = mysqli_query($con, "SELECT * FROM `testtszh` WHERE `Address` LIKE '%{$user_get}%'");
    
    if (mysqli_num_rows($sql) != 0): $a =0; 
while ($row = mysqli_fetch_assoc($sql)): $a++ ?>
<p>ФИО: <?= $row['FIO'] ?></p>
<p>Адрес: <?= $row['Address'] ?></p>
    Задолженность:
  <input type="text" id="a1<?= $a?>" name="a1<?= $a?>" value= <?= $row['Tszh'] ?> onkeyup="b(<?= $a?>)">
    Пени:
  <input type="text" id="a2<?= $a?>" name="a2<?= $a?>" value= <?= $row['Penitszh'] ?> onkeyup="b(<?= $a?>)">
    Итого:
  <input type="text" id="a3<?= $a?>" name="a3<?= $a?>" value= <?= $row['Tszh'] + $row['Penitszh'] ?>>  
<?php endwhile;
        
    else:
       echo "Не найдено";
    endif;
 
else:
  echo "Ничего нет";
endif;
Миниатюры
Присвоение ссылок каждому из результатов поиска  
1
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 69
04.03.2017, 20:11  [ТС]
Подключил JQuery, проверил, ничего не получается, даже когда изменил скрипт на альтернативный все равно не работает.
Вот мой измененный код (может быть я неправильно что-то написал):
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<body>
<?php
$con = mysqli_connect("localhost", "admin", "") or die("Ошибка подключения к базе");
mysqli_select_db($con, "111") or die("База не найдена");
$user_get = $_GET['q'];
iconv("UTF-8", "WINDOWS-1251", $user_get);
//echo $user_get;
 
if ((isset($user_get))) :
    $sql = mysqli_query($con, "SELECT * FROM `testtszh` WHERE `Address` LIKE '%{$user_get}%'");
    
    if (mysqli_num_rows($sql) != 0): $a =0; 
while ($row = mysqli_fetch_assoc($sql)): $a++ ?>
<p>ФИО: <?= $row['FIO'] ?></p>
<p>Адрес: <?= $row['Address'] ?></p>
    Задолженность:
  <input type="text" id="a1<?= $a?>" name="a1<?= $a?>" value= <?= $row['Tszh'] ?> onkeyup="b(<?= $a?>)">
    Пени:
  <input type="text" id="a2<?= $a?>" name="a2<?= $a?>" value= <?= $row['Penitszh'] ?> onkeyup="b(<?= $a?>)">
    Итого:
  <input type="text" id="a3<?= $a?>" name="a3<?= $a?>" value= <?= $row['Tszh'] + $row['Penitszh'] ?>>  
<?php endwhile;
        
    else:
       echo "Не найдено";
    endif;
 
else:
  echo "Ничего нет";
endif;
?> 
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js">
   function b(group){
        //var $self = $(this);
        var c1 = $('#a1'+group).val();
        var c2 = $('#a2'+group).val();
        var value = Number(c1) + Number(c2);
        $('#a3'+group).val(value);
    }
</script>
</body>
</html>
Я тут подумал, а может быть дело в том, что я ищу в результатах поиска, т.е. после срабатывания другого скрипта со страницы, которую я выкладывал выше:
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<html>
<head>
<title> ТСЖ Оплата </title>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8;">
<link rel="stylesheet" type="text/css" href="site.css">
<script type="text/javascript">
function showHint(str) {
    if (str.length == 0) {
        document.getElementById("test").innerHTML = "";
        return;
    }
    if (window.XMLHttpRequest) { // Код для IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp = new XMLHttpRequest();
    } else { // Код для for IE6, IE5
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange = function () {
        if (xmlhttp.readyState == 4) // если передача данных закончена то..
        {
            if (xmlhttp.status == 200) // если ответ сервера 200 ок то
            {
                // вставляем в элемент ID="test"
                document.getElementById("test").innerHTML = xmlhttp.responseText; 
            } else //если ответ сервера не 200 то
            {
                // выдаем соообщение
                alert('Ошибка подключения сервера'); 
            }
        } else //если данные с сервера не загружены то
        {
            // вставляем в элемент ID="test"
            document.getElementById("test").innerHTML = 'Загрузка...';
        }
    }
    // отправляем методом GET файлу getuser.php
    xmlhttp.open("GET","getuser.php?q="+encodeURIComponent(str),true);
    xmlhttp.send();
}
</script>
</head>
<body>
 
<p><b>Пожалуйста, введите адрес по образцу: "Проспект Строителей 1-99" :</b></p>
<form>
<input type="text" onkeyup="showHint(this.value)" size="20" />
</form>
<p><span id="test"></span></p>
 
</body>
</html>
И это как-то влияет на работу этого скрипта.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.03.2017, 20:11
Помогаю со студенческими работами здесь

Присвоение ссылок в C#
Здравствуйте! Проблема такая: есть класс Square и следующий код на C#: List&lt;Square&gt; square = new List&lt;Square&gt;(); ...

Вывод результатов поиска по БД на странице поиска
Добрый день. Я начинаю изучать PHP и у меня возник вопрос. Я создал страницу поиска по БД и вывода результатов. С помощью метода post...

Присвоение ссылок словосочетанием. Задача для нубов
Здравствуйте. Увлекаюсь изучением пхп в свободное время, и даже прошел курс в кодакадемии =)), но понял что я полный 0 когда нужно было...

Вывод результатов поиска
Друзья, кто может подсказать, как вывести результаты поиска по базе данных в отдельный DBGrid, а в идеале в несколько DBGrid-ов: из каждой...

Выбор из результатов поиска
Добрый день! Снова вопрос. Есть Запрос 1 на поиск данных. Строила в режима конструктора, использовала Like (например, Like &quot;*&quot;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru