Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
13 / 13 / 3
Регистрация: 31.03.2013
Сообщений: 287

Отправка формы с php через AJAX

20.07.2013, 11:30. Показов 3296. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем у меня есть php файл. В него надо передать данные через форму и выполнить его так, что бы страница не обновлялась...
делаю так:
HTML5
1
2
3
4
5
6
<form method="post" id="form">
    <input name="poles" value="[xfvalue_site]">
    
        <input type="submit" id="submitData" name="submitData" value="Button33" />
    </form>     
    {include file="http://sile.ru/include.php"}
а в файле include.php принимаю вот так
PHP
1
2
3
if($_POST)
    {
$dle = $_POST["poles"];
Вот как мне это сделать без обновления страницы, я понимаю что AJAX, но что то примеры все какие то непонятные и не с тем как у меня((( Помогите пожалуйста
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.07.2013, 11:30
Ответы с готовыми решениями:

Отправка данных с формы через ajax
Всем привет) У меня появились сразу 2 проблемы (вроде всё верно написано, но не работает). В общем вот у меня есть вот 1 форма ...

Отправка изображения через ajax в php
Здравствуйте! Несколько часов пытаюсь передать изображение на сервер через ajax и ничего не получается. Обычные переменные загружаются и...

Ajax отправка формы
Помогите решит проблемку отправки письма, при нажатии кнопки отправить ничего не происходит... &lt;form...

16
 Аватар для Dolphin
814 / 797 / 201
Регистрация: 21.09.2012
Сообщений: 2,656
20.07.2013, 12:14
JavaScript
1
var data = $('#form').serialize();
и отправляете данные в аяксе
0
13 / 13 / 3
Регистрация: 31.03.2013
Сообщений: 287
20.07.2013, 12:21  [ТС]
Вы не могли бы расширить свой ответ, как я понимаю то что мне нужно занимает всего строчек 10, Если вам не сильно лень напишите как должно быть. Я вчера целый день искал решение одной задачи,сегодня уже 4 часа ищу решение второй задачи.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
20.07.2013, 12:28
Цитата Сообщение от ychelovek Посмотреть сообщение
Я вчера целый день искал решение одной задачи,сегодня уже 4 часа ищу решение второй задачи
и ни разу не заглянули в раздел jquery ? Сохранение данных при нажатии на кнопку
0
13 / 13 / 3
Регистрация: 31.03.2013
Сообщений: 287
20.07.2013, 13:00  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
и ни разу не заглянули в раздел jquery ? Сохранение данных при нажатии на кнопку
Спасибо! Сейчас попробую, если что то не получится напишу в теме в этой

Добавлено через 28 минут
Вот смотрите пробую так:

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<script type="text/javascript" language="javascript">
$(document).ready(function() {
    $('#onli').click(function() {
            $.ajax({
                    type: 'POST',
                    url: 'http://site.ru/include.php',
                    data:({ddd:1}),
                    success: function(data){
                        
                        $('#counter').html(data); // выводим то, что возвращает php в блок
                            }
                });
        });     
});
</script>
 
<form method="post">
 <input type="button" name="print" value="Жми" id="onli">
 <input name="poles" value="[xfvalue_site]">
 <div id="counter"></div>    
    </form>




файл include.php

PHP
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
52
<?php
    
if(isset($_POST["ddd"])){     
 
$dle = $_POST["poles"];
echo $dle.'privet';
//ТУТ ОН ВЫДАЕТ ТОЛЬКО privet что означает что из блока poles данные не получены
 
if ($dle[strlen($dle)-1]==$slash) {
$dle = substr($dle, 0, strlen($dle)-1);
}
 
/*echo substr_replace($str, '.', strrpos($str, ','));*/
 
@$fp = fopen($dle.'/online.txt', 'r');
if (!$fp) {
    echo 'N/A';
    
   
}
else
{
$str = file_get_contents($dle.'/online.txt');
 
 
 $i = -1;
    $tmp = $max = 0;
    while( isset($str[++$i]) )
    {
        if( is_numeric($str[$i]) )
        {
            while( is_numeric($str[$i]) )
            {
                $tmp *= 10;
                $tmp += $str[$i++];
            }
        }
        $max = $max > $tmp ? $max : $tmp;
        $tmp = 0;
    }
   $str= $max ;
if ($max>10000 || $max==0)
{
echo 'N/A';
}
else
{
   echo  $str;
}
}
}
?>
в результате после нажатия на кнопку он выдает только
privet
N/A

Файл не принимает [xfvalue_site] и как мне показалось, пхп он выполняет не после клика, а сразу при загрузке страницы (потому что при нажатии на кнопку в туже секунду выдает результат), а вот показывает результат только после нажатия на кнопку, а мне надо именно выполнять файл include.php после нажатия!!!

В чем я допускаю ошибку? Помогите пожалуйста
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
20.07.2013, 13:20
Цитата Сообщение от ychelovek Посмотреть сообщение
//ТУТ ОН ВЫДАЕТ ТОЛЬКО privet что означает что из блока poles данные не получены
а что он еще должен выдавать? Вы и не передаете это значение, вы передаете только $_POST['ddd']
Цитата Сообщение от ychelovek Посмотреть сообщение
JavaScript
1
data:({ddd:1})
Добавлено через 1 минуту
не надо лепить собаки. У вас что, на продакшне уже скрипт? Зачем вы при разработке скрываете ошибки?
в начале php-кода
PHP
1
2
error_reporting(-1);
ini_set('display_errors', 'On');
0
13 / 13 / 3
Регистрация: 31.03.2013
Сообщений: 287
20.07.2013, 13:21  [ТС]
я и не знал как их отобразить эти ошибки....
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
20.07.2013, 13:25
http://www.php.net/RU/language... ontrol.php

Добавлено через 22 секунды
FAQ по распространенным ошибкам
0
13 / 13 / 3
Регистрация: 31.03.2013
Сообщений: 287
20.07.2013, 13:36  [ТС]
Вы не могли бы изсправить ошибку и все? это просто единственное что мне осталось((
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
20.07.2013, 13:53
А почему вы сами не хотите хотя бы попытаться?
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script type="text/javascript" language="javascript">
$(function() {
    $('#onli').click(function() {
        $.post( './include.php', {'pole': $('#pole').val()}, function(data){
            $('#counter').html(data) // выводим то, что возвращает php в блок
        })
    })
})
</script>
 
<form method="post">
  <input type="button" name="print" value="Жми" id="onli">
  <input name="poles" value="[xfvalue_site]" id="pole">
</form>
<div id="counter"></div>
PHP
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
<?php
 
error_reporting(-1);
ini_set('display_errors', 'On');
 
if(isset($_POST['pole'])) {     
 
$dle = $_POST['pole'];
echo htmlspecialchars($dle.'privet');
 
/*if ($dle[strlen($dle)-1]==$slash) { //Откуда берется $slash !?
$dle = substr($dle, 0, strlen($dle)-1);
}
 */
/*echo substr_replace($str, '.', strrpos($str, ','));*/
 
$fp = fopen($dle.'/online.txt', 'r');
if (!$fp) {
    echo 'N/A';
    
   
}
    else
    {
        $str = file_get_contents($dle.'/online.txt');
 
 
        $i = -1;
        $tmp = $max = 0;
        while( isset($str[++$i]) )
        {
            if( is_numeric($str[$i]) )
            {
                while( is_numeric($str[$i]) )
                {
                    $tmp *= 10;
                    $tmp += $str[$i++];
                }
            }
            $max = $max > $tmp ? $max : $tmp;
            $tmp = 0;
        }
 
        echo ($max>10000 || $max==0) ? 'N/A' : $max;
    }
}
Добавлено через 1 минуту
Цитата Сообщение от ychelovek Посмотреть сообщение
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$i = -1;
* * $tmp = $max = 0;
* * while( isset($str[++$i]) )
* * {
* * * * if( is_numeric($str[$i]) )
* * * * {
* * * * * * while( is_numeric($str[$i]) )
* * * * * * {
* * * * * * * * $tmp *= 10;
* * * * * * * * $tmp += $str[$i++];
* * * * * * }
* * * * }
* * * * $max = $max > $tmp ? $max : $tmp;
* * * * $tmp = 0;
* * }
какой знакомый код, однако..
0
13 / 13 / 3
Регистрация: 31.03.2013
Сообщений: 287
20.07.2013, 14:37  [ТС]
Я чесно пытаюсь сижу. уже как толкьо не пробывал, по вашему форуму кучу примеров, но не выходит

Добавлено через 13 минут
Да король код твой просто отлично работает)

Добавлено через 16 минут
Король зачем ты почистил, ты же код давал, я есть ходил даже посмотреть не успел(
0
20.07.2013, 14:45

Не по теме:

ничего я не чистил. Это вторая страница темы, код на первой.

0
13 / 13 / 3
Регистрация: 31.03.2013
Сообщений: 287
20.07.2013, 15:08  [ТС]

Не по теме:

:wall:Что то я затупил....



Добавлено через 21 минуту
вы наверно меня не поняли. В дополнительном поле хранится ссылка, но она может быть как http://site.ru так и http://site.ru/ поэтому и надо обрезать слеш
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
20.07.2013, 15:12
Это вы не поняли. Хотите обрезать слэш - либо замените $slash на '/', либо объявите переменную $slash.
0
13 / 13 / 3
Регистрация: 31.03.2013
Сообщений: 287
20.07.2013, 23:50  [ТС]
Король возникла проблема. В общем DLE же новостной движок, и у меня 10 новостей на страницу. Так вот. При использовании скрипта используется ID и оно получается одинаковое у всех новостей.

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 <script type="text/javascript" language="javascript">
$(function() {
    $('#{news-id}').click(function() {
        $.post( 'http://l2argument.ru/proba.php', {'pole': $('#pole').val()}, function(data){
            $('#counter').html(data) // выводим то, что возвращает php в блок
        })
    })
})
</script>
               
<div id="{news-id}s"><form method="post">
    <input style="width:250px;" type="button" onclick="getElementById('{news-id}s').style.display='none';" name="print" value="Онлайн" id="{news-id}">
    <input name="poles" style="display:none;" value="[xfvalue_site]" id="pole">
    </form>
Как видно, у 2х блоков я просто сделал id={news-id} id={news-id}s
где news-id - ид новости (считайте оно всегда разное)
Но как мне быть с id="pole" оно же у меня в пхп файле прописано if(isset($_POST['pole'])). Надеюсь объяснил хорошо

 Комментарий модератора 
используйте теги оформления кода


Добавлено через 43 минуты

Не по теме:

Извините буду следить за этим



Добавлено через 38 минут
Никак не получается. пробывал счетчик сделать (от 1 до 10) и менять так но оно так нельзя

Добавлено через 5 часов 24 минуты
АП. Ребята ну помогите найти решение

Добавлено через 1 час 7 минут
Подскажите пожалуйста.
JavaScript
1
2
3
4
5
6
7
8
9
<script type="text/javascript" language="javascript">
$(function() {
    $('#{news-id}').click(function() {
        $.post( 'http://l2argument.ru/proba.php', {'pole': $('#pole').val()}, function(data){
            $('#counter').html(data) // выводим то, что возвращает php в блок
        })
    })
})
</script>
Как мне выполнить данный JS скрипт, и что бы там еще при клике записывало [xfvalue_site] в текстовый файл site.txt
Тогда я смогу после передачи в файл выполнять скрипт пхп по дополнительному полю...

Добавлено через 5 минут
Только нужно что бы в файл не Дописывал а перезаписывал текстовый файл с новым значением
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
21.07.2013, 02:51
Цитата Сообщение от ychelovek Посмотреть сообщение
HTML5
1
id="pole"
HTML5
1
class="pole"
Цитата Сообщение от ychelovek Посмотреть сообщение
JavaScript
1
{'pole': $('#pole').val()}
JavaScript
1
{'pole': $(this).children('.pole').val()}
1
13 / 13 / 3
Регистрация: 31.03.2013
Сообщений: 287
21.07.2013, 11:46  [ТС]
Не работает. Погуглив я нашел еще find, но с ним у меня тоже ничего не вышо.

Добавлено через 14 минут
{'pole': $(this).find('.pole').attr("value")()}
{'pole': $(this).children('.pole').attr("value")( )}
{'pole': $(this).children('.pole').val()}
от всех этих строк толку никакого(((

Добавлено через 1 минуту
я посомтрел что еще применяют $("div").children(".selected") напрямую обращаясь к div'у но, даже добавив в форму div с таким велью как у инпута у меня ничего не получилось

Добавлено через 16 минут
Еееее.

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<script type="text/javascript" language="javascript">
$(function() {
    $('#onli').click(function() {
        $.post( 'http://l2argument.ru/proba.php', 
        //  {'pole': $(this).children('.pole').val()} 
               {'pole':  $('#formonline').find('.pole').val()} 
               //  {'pole': $('#pole').val()}
              
               , function(data){
            $('#counter').html(data) // выводим то, что возвращает php в блок
        })
    })
})
</script>


HTML5
1
2
3
4
5
<div id="formonline"><form method="post">
  <input type="button" onclick="getElementById('formonline').style.display='none';" name="print" value="Жмите" id="onli">
    <div id="[xfvalue_site]"><input name="poles" value="[xfvalue_site]" class="pole"></div>
    </form></div>
<div id="counter"></div>
Оно рабоатет (Ну вроде как)
Спасибо большое король!!!

Добавлено через 32 минуты
Ой я не тот код скопировал

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<script type="text/javascript" language="javascript">
$(function() {
    $('#{news-id}').click(function() {
        $.post( 'http://l2argument.ru/proba.php', 
        //  {'pole': $(this).children('.pole').val()} 
               {'pole':  $('#{news-id}s').find('.pole').val()} 
               //  {'pole': $('#pole').val()}
              
               , function(data){
            $('#{news-id}as').html(data) // выводим то, что возвращает php в блок
        })
    })
})
</script>
HTML5
1
2
3
4
5
<div id="{news-id}s"><form method="post">
  <input type="button" onclick="getElementById('{news-id}s').style.display='none';" name="print" value="Жмите" id="{news-id}">
    <input name="poles" value="[xfvalue_site]" class="pole">
    </form></div>
                <div id="{news-id}as"></div>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.07.2013, 11:46
Помогаю со студенческими работами здесь

AJAX отправка формы
Собственно на локальной машине код отрабатывает без ошибок, а на хостинге выдает ошибку

Ajax отправка формы
Уже голову сломал, почему не происходит отправка формы! index.html: &lt;!doctype html&gt; &lt;html&gt; &lt;head&gt; &lt;meta...

AJAX отправка формы
Есть форма отправки письма админу. Делаю сабмит с помощью AJAX. Разметка формы &lt;form method=&quot;post&quot;...

Отправка формы Ajax
Прошу помощи. Есть обработчик форм с валидацией, как правильно его переписать без валидации ( убрать валидацию) собственно сам код: ...

Ajax загрузка формы из загруженного через ajax блока
Вообщем, через ajax в блок подгружается форма, из нее нужно загрузить в этот же блок др.контент. $('#form').submit(function(e){ ...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru