Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.01.2017, 16:34
Новичок на форуме
Отправить личное сообщение для Petar07 Посмотреть профиль Найти все сообщения от Petar07
 
Регистрация: 19.01.2017
Сообщений: 6

Отправка значания радиобаттона в php скрипт
Ребята, вопрос похоже очень популярный, но я столкнулся с этим, а разобраться не могу. нужно значение выбранного радиобаттона отправлять в скрипт
<?php 
	$con = mysql_connect("localhost","root",""); 
	mysql_select_db("convertor", $con) or die(mysql_error()); 
	$result = mysql_query("SELECT * from diagram ORDER BY diagramnumber"); 
	?><?

	if (mysql_num_rows($result) > 0) 
		{ 
			$resultt = mysql_fetch_array($result); 
			$i==0; 
		?><script src='https://code.jquery.com/jquery-3.1.1.min.js'></script>
		<form id="form_id"><? 
		do { 
			?>
			<input type="radio" name="rrr" value="<?echo $i++;?>"><?echo $resultt['name'];?>
			<Br>
			<? 
			} 

		while($resultt = mysql_fetch_array($result)); ?>
		
		<input type="submit" name="znach" value="Построить график" accept="text/xml" onClick="document.getElementById('one').contentWindow.location.reload(true);">
		</form>
		<script type="text/javascript">
		$(function() {
   			$('#form_id').submit(function(e) {
        		e.preventDefault();
        		var isCheck = 0;
        		for (var i = 0; i < this.rrr.length; i++) {
            		if (this.rrr[i].checked) {
                		isCheck = 1;
                		break;
            		}
       			 }
        if (!isCheck) {
            alert('Выберите вариант ответа');
            return;
        }
        $.ajax({
            type: 'post',
            url: 'drawline.php',
            data: $(this).serialize(),
            success: function(result) {
                $('#form_id').html(result);
            }
        });
    });
});
		</script>
		<? 
		} 

	else { echo '-Нет диаграмм'; } 
	?>
Ответить с цитированием
  #2 (permalink)  
Старый 19.01.2017, 16:59
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

<?php 
	$con = mysql_connect("localhost","root",""); 
	mysql_select_db("convertor", $con) or die(mysql_error()); //не вываливайте ошибки sql на страницу
	
    $result = mysql_query("SELECT * from diagram ORDER BY diagramnumber"); 
	
    if (mysql_num_rows($result) > 0) { 
		$i==0; 
	?><script src='https://code.jquery.com/jquery-3.1.1.min.js'></script>
		<form id="form_id"><? 
			while($row = mysql_fetch_assoc($result)): 
			?>
			<input type="radio" name="rrr" value="<?=$i++?>"><?=$row['name']?>
			<br>
			<? 
			endwhile
            ?>
		
		<input type="submit" name="znach" value="Построить график" accept="text/xml" onClick="document.getElementById('one').contentWindow.location.reload(true);">
		</form>
		<script type="text/javascript">
		$(function() {
   			$('#form_id').submit(function(e) {
        		e.preventDefault();
        		var form = $(this);
                if (!form.find('input:checked').length) {
                    alert('Выберите вариант ответа');
                    return;
                }
                $.ajax({
                    type: 'post',
                    url: 'drawline.php',
                    data: form.serialize(),
                    success: function(result) {
                        $('#form_id').html(result);
                    }
                });
            });
        });
		</script>
		<? 
		} 
	else echo '-Нет диаграмм'; 
?>


А значение выбранной кнопки передаются здесь data: form.serialize(), в чем проблема?

Последний раз редактировалось laimas, 19.01.2017 в 17:01.
Ответить с цитированием
  #3 (permalink)  
Старый 19.01.2017, 18:15
Новичок на форуме
Отправить личное сообщение для Petar07 Посмотреть профиль Найти все сообщения от Petar07
 
Регистрация: 19.01.2017
Сообщений: 6

получение переменной $i = $_POST['rrr'];? верно?
суть такая, вот файл index.php
<meta charset="utf-8">
<title>Convertor IDEF0/3-->DiagramUML</title>
<link rel="stylesheet" href="main.css">

</head>

<body>
<?php  include 'loadXML.php'; include 'ffff.php' ?>
<h1 align="center"><i>Конвертор диаграмм</i></h1>
  <div class="main">
    <div class="navigation_head">
    <form class="XML" method="post" enctype="multipart/form-data">
    	<input type="file" name="xmlFile" accept="text/xml">
    	<input type="submit" name="buttonImport" value="Загрузить" accept="text/xml">
        <input type="submit" name="Refresh" value="Отчистка БД" accept="text/xml">
    </form>
    </div>
	<div class="bar">
     <?php include 'radiobut.php';?>
    </div>
	<div class="content">
    <iframe src='drawline.php' frameborder="1" height="670" width="1280" name="one" id="one">
      </iframe>
    </div> 
    <div class="navigation_footer"></div>
</div>  
</body>


файл radiobut.php
<?php
    $con = mysql_connect("localhost","root","");
    mysql_select_db("convertor", $con) or die(mysql_error()); //не вываливайте ошибки sql на страницу
     
    $result = mysql_query("SELECT * from diagram ORDER BY diagramnumber");
     
    if (mysql_num_rows($result) > 0) {
        $i==0;
    ?><script src='https://code.jquery.com/jquery-3.1.1.min.js'></script>
        <form id="form_id"><?
            while($row = mysql_fetch_assoc($result)):
            ?>
            <input type="radio" name="rrr" value="<?=$i++?>"><?=$row['name']?>
            <br>
            <?
            endwhile
            ?>
         
        <input type="submit" name="znach" value="Построить график" accept="text/xml" onClick="document.getElementById('one').contentWindow.location.reload(true);">
        </form>
        <script type="text/javascript">
        $(function() {
            $('#form_id').submit(function(e) {
                e.preventDefault();
                var form = $(this);
                if (!form.find('input:checked').length) {
                    alert('Выберите вариант ответа');
                    return;
                }
                $.ajax({
                    type: 'post',
                    url: 'drawline.php',
                    data: form.serialize(),
                    success: function(result) {
                        $('#form_id').html(result);
                    }
                });
            });
        });
        </script>
        <?
        }
    else echo '-Нет диаграмм';
?>
и вот исходя из значения радиобаттона, по нажатию кнопки обновлялся фрейм. Кажется, я не понимаю чего то банального
Ответить с цитированием
  #4 (permalink)  
Старый 19.01.2017, 18:23
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Ajax запрос производится к этому скрипту - drawline.php, в нем и получайте значение $_POST['rrr'], в чем проблема?

die(mysql_error()) только в режиме отладки на локальном сервере, но никак не на реальном.
Ответить с цитированием
  #5 (permalink)  
Старый 19.01.2017, 18:41
Новичок на форуме
Отправить личное сообщение для Petar07 Посмотреть профиль Найти все сообщения от Petar07
 
Регистрация: 19.01.2017
Сообщений: 6

все так и есть, там и получаю, но загвоздка в том что я пытаюсь сделать, чтобы по нажатию обновлялся фрейм в контенте, а у меня скрипт срабатывает в баре
Ответить с цитированием
  #6 (permalink)  
Старый 19.01.2017, 18:43
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Что значит обновлялся - ответ сервера на запрос должен быть помещен во фрейм?
Ответить с цитированием
  #7 (permalink)  
Старый 19.01.2017, 18:47
Новичок на форуме
Отправить личное сообщение для Petar07 Посмотреть профиль Найти все сообщения от Petar07
 
Регистрация: 19.01.2017
Сообщений: 6

да, который в контенте
Ответить с цитированием
  #8 (permalink)  
Старый 19.01.2017, 19:06
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Ну и зачем тогда Jjax, и форма, выбирайте кнопку, а по выбору меняйте url фрейма, передавая в него параметр выбранной кнопки. В обработчике указанном в src фрейма принимайте этот GET параметр, выполняйте операции нужные, содержание фрейма и будут обновлено. Сам iframe на странице можно рассматривать как контейнер для "аля ajax".
Ответить с цитированием
  #9 (permalink)  
Старый 19.01.2017, 23:58
Новичок на форуме
Отправить личное сообщение для Petar07 Посмотреть профиль Найти все сообщения от Petar07
 
Регистрация: 19.01.2017
Сообщений: 6

вы говорите о нечто подобном?
<!DOCTYPE html>
<head>

<meta charset="utf-8">
<title>Convertor IDEF0/3-->DiagramUML</title>
<link rel="stylesheet" href="main.css">

</head>

<body>
<?php  include 'loadXML.php'; include 'ffff.php' ?>
<h1 align="center"><i>Конвертор диаграмм</i></h1>
  <div class="main">
    <div class="navigation_head">
    <form class="XML" method="post" enctype="multipart/form-data">
    	<input type="file" name="xmlFile" accept="text/xml">
    	<input type="submit" name="buttonImport" value="Загрузить" accept="text/xml">
        <input type="submit" name="Refresh" value="Отчистка БД" accept="text/xml">
    </form>
    </div>
	<div class="bar">
   <form id="form_id" >
   <?php
    $con = mysql_connect("localhost","root","");
    mysql_select_db("convertor", $con)
    $result = mysql_query("SELECT * from diagram ORDER BY diagramnumber");
    if (mysql_num_rows($result) > 0) {
        $i==0;
        while($row = mysql_fetch_assoc($result)):
        ?><input type="radio" name="rrr" value="<?=$i++?>"><?=$row['name']?><br><?
        endwhile
        ?><input type="submit" name="znach" value="Построить график" accept="text/xml"><?
        ?>
        </form>
    </div>
	<div class="content">
    <iframe src="drawline.php?rrr=<?$i?>" frameborder="1" height="670" width="1280" name="one" id="one">
      </iframe>
    </div> 
    <div class="navigation_footer">
        
    </div>
</div>  
</body>
Ответить с цитированием
  #10 (permalink)  
Старый 20.01.2017, 00:21
Новичок на форуме
Отправить личное сообщение для Petar07 Посмотреть профиль Найти все сообщения от Petar07
 
Регистрация: 19.01.2017
Сообщений: 6

Разобрался, большое спасибо
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
Почему скрипт не работает с данными, которые вернул другой скрипт? Rooner jQuery 3 20.09.2012 14:56
Изменить скрипт Изучаю_JS Общие вопросы Javascript 0 12.02.2012 22:05
Скрипты отправка сообщений между пользователями, скрипт вывод текста на страницу.... Rapala Элементы интерфейса 2 12.01.2011 17:27
Чужей php скрипт wave Общие вопросы Javascript 13 20.12.2008 21:10