PDA

View Full Version : ارسال داده از یک صفحه php به یک صفحه جاوا اسکریپت



samsami
پنج شنبه 02 آذر 1391, 16:22 عصر
با سلام خدمت دوستان عزیز

من یک صفحه دارم با پسوند php که یک متغیر معرفی می کنم مثل


$a=10;


حالا می خوام این متغیر را بفرستم به یک صفحه که با پسوند js است .
آن وقت می خوام این مقدار متغیر a نمایش داده بشه .

hidensoft
پنج شنبه 02 آذر 1391, 16:44 عصر
اگه نمایش داده می شد بایست تعجب می کردیم :)
دیگه امروز اینقدر گفتم آقا کلاینت ساید سرور ساید خسته شدم این کدو ببین امیدوارم متوجه بشی.


<?php
$a = 5;
?>
<script>
var a = <?php echo $a ?>;
alert(a);
</script>

samsami
پنج شنبه 02 آذر 1391, 18:02 عصر
دوست خیلی خیلی ممنون از پاسختون

خیلی از کار منو راحت کردین امیدوارم که بتونم جبران کنم

راستی فقط عدد جواب میده رشته قبول نمیکنه یعنی اگه به جای 5 "ali" نوشته شده باشه جواب نمیده.

tux-world
پنج شنبه 02 آذر 1391, 18:54 عصر
<?php
$ax = "fffa";
?>
<script>
var a = <?php echo "'$ax'"; ?>;
alert(a);
</script>

asadi3077
پنج شنبه 02 آذر 1391, 22:33 عصر
بر عکس این قضیه میشه؟ مثلا ارسال داده از یک صفحه html به یک صفحه php

میخوام با زدن دکمه button اطلاعات text در php چاپ بشه



<input type="text" name="text1" />
<input type="button" name="button1" value="Button" onclick="<?php echo (text1);?>"/>

tux-world
پنج شنبه 02 آذر 1391, 23:41 عصر
نه این نمیشه. باید از جاوا اسکریپت استفاده کنید

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.js"></script>
<script type="text/javascript">
$(function() {
$('#button1').click(function(){
alert ( $('#text1').val() );
});
});
</script>
<input type="text" id="text1" />
<input type="button" id="button1" value="Button"/>

masudafsar
جمعه 03 آذر 1391, 00:25 صبح
اگر منظورت اینه که یک سری داده از یک اسکریپت سمت سرور به یک اسکریپت سمت کاربر منتقل بشه می تونی از ajax و JSON استفاده کنی.

اسکریپت PHP :



<?php
ob_start();
header("Content-type: application/json");

$list['a'] = array(1,3,4,5,6,7,8,9);
$list['b'] = array(5,4,2,4,5,7,8,4);
$list['c'] = array(9,8,0,7,5,6,4,3);

echo json_encode($list);
ob_end_flush();
?>


اسکریپت JS :



<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="../jquery.js"></script>
</head>
<body>
<div id="data"></div>
<script type="text/javascript">
var data = $.ajax({
type:"POST",
url:"new.php",

async: false,
dataType: "json",
success: function(data){
$("#data").html(data.a); // a نام کلید یک المنت خاص از آرایه است.
}
}).fail(function() { alert("error"); });
</script>
</body>
</html>

asadi3077
جمعه 03 آذر 1391, 09:16 صبح
نه این نمیشه. باید از جاوا اسکریپت استفاده کنید

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.js"></script>
<script type="text/javascript">
$(function() {
$('#button1').click(function(){
alert ( $('#text1').val() );
});
});
</script>
<input type="text" id="text1" />
<input type="button" id="button1" value="Button"/>

منظورم html به php بود
نه html به js
ممنون


اگر منظورت اینه که یک سری داده از یک اسکریپت سمت سرور به یک اسکریپت سمت کاربر منتقل بشه می تونی از ajax و JSON استفاده کنی.

اسکریپت PHP :



<?php
ob_start();
header("Content-type: application/json");

$list['a'] = array(1,3,4,5,6,7,8,9);
$list['b'] = array(5,4,2,4,5,7,8,4);
$list['c'] = array(9,8,0,7,5,6,4,3);

echo json_encode($list);
ob_end_flush();
?>


اسکریپت JS :



<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="../jquery.js"></script>
</head>
<body>
<div id="data"></div>
<script type="text/javascript">
var data = $.ajax({
type:"POST",
url:"new.php",

async: false,
dataType: "json",
success: function(data){
$("#data").html(data.a); // a نام کلید یک المنت خاص از آرایه است.
}
}).fail(function() { alert("error"); });
</script>
</body>
</html>


برعکس این قضیه
یعنی client-side به server-side
html به php
ممنون

masudafsar
جمعه 03 آذر 1391, 15:15 عصر
بر عکس این قضیه که خیلی ساده هستش، کد دوم رو به صورت زیر تغییر بده:


$.ajax({
type:"POST",
url:"new.php",
data: { name: "John", location: "Boston" },
async: false,
//dataType: "json",
success: function(data){
$("#data").html(data);
}
}).fail(function() { alert("error"); });


بعد توی فایل php می تونی از متغیر


$_REQUEST

به اون دسترسی پیدا کنی. مقدار این متغیر آرایه زیر هست :



Array (
[name] => John,
[location] => Boston
)

asadi3077
جمعه 03 آذر 1391, 15:33 عصر
بر عکس این قضیه که خیلی ساده هستش، کد دوم رو به صورت زیر تغییر بده:


$.ajax({
type:"POST",
url:"new.php",
data: { name: "John", location: "Boston" },
async: false,
//dataType: "json",
success: function(data){
$("#data").html(data);
}
}).fail(function() { alert("error"); });


بعد توی فایل php می تونی از متغیر


$_REQUEST

به اون دسترسی پیدا کنی. مقدار این متغیر آرایه زیر هست :



Array (
[name] => John,
[location] => Boston
)

میشه یه مثال ساده تر بزنید
ممنون

tux-world
جمعه 03 آذر 1391, 21:33 عصر
ساده تر از این دیگه نیست . بهتره شما یه خورده بیشتر تمرین کنید

asadi3077
شنبه 04 آذر 1391, 09:00 صبح
ساده تر از این دیگه نیست . بهتره شما یه خورده بیشتر تمرین کنید

اولا من که با شما نبودم
بعدش هم اگه خودتون بلدید توضیح بدین

tux-world
شنبه 04 آذر 1391, 10:25 صبح
شما استاد ما هیچچی نمیدونیم. شمایی که تو امضات نوشتی Web Developer