本文是最近做WAMP网站的学习知识,这做这个网站过程中需要通过新闻通告的超链接显示相应的具体内容,所以就涉及到一些相关变量赋值传递的内容,包括:HTML超链接传递值通过JavaScript显示、JavaScript变量转换成PHP变量、超链接实现传递给PHP连接数据库(重点)、PHP输出JavaScript内容。

一. HTML超链接传递值

首先讲述通过HTML超链接实现跳转,再通过JavaScript实现获取传递的值。代码如下:其中testA.php是超链接,testB.php是获取的传递值。

值传递

$result=10001;

?>

跳转链接

testB.php代码如下:

µȂ¼½脦

var src = document.getElementById("new_id").value = location.href;

//alert(src);

var params = src.split('?');

//输出newid=10001中的id

if(params[1]) {

var idparams = params[1].split('=');

}

输出src完整路径:

输出params[1]获取参数:

输出id值:

其中核心代码是:跳转链接

设置URL链接,需要注意的是HTML中嵌套PHP的变量,同时可以与PHP中SQL查询赋值比较下:

$result=$hgi->doquery('2',"select * from Course_News where CN_Nid='".$_GET['newid']."';");

然后在testB.php中通过JavaScript显示其值:

var src = document.getElementById("new_id").value = location.href;

二. JavaScript变量转换PHP值

此时已经通过获取了var idparams[1] = 10001,但是我想实现的效果是通过id数据库主键,获取数据库的内容,而数据库的那部分代码如下:

$result=$hgi->doquery('2',"select * from Course_News where CN_Nid='".$id."';");

所以只需要把$id赋值为JavaScript的var型变量即可。引用

mingfish2 发表的贴“怎么将js变量赋值给php?”

由于PHP或Ajax学习较少,所以我没有实现,仅引用别人的方法和思想。通常采用的方法如下:

1.通过Ajax实现js变量赋值给PHP(引用:http://www.xgllseo.com/?p=3241)

JS部分代码

$('button').click(function(){

var js2_101=30;

$.ajax({

type:'GET',

url:"3.php",

data:{text:js2_101},

success: function(data){

alert(data)

}

});

return false;

});

PHP部分代码

$m2_10=$_GET['text'];

$php2=10;

echo $m2_10+$php2."

此处我更想分享的是它的一些原理知识:

JS变量赋值给PHP时,你需要知道JS是客户端语言可以直接在浏览器上运行,PHP是服务器语言在后台运行,所以JS变量不能直接赋值给PHP。

那么怎么样知道什么是服务器语言什么是客户端语言呢?其实查看网页的源代码我们会发现可以直接查看到JS的源代码而PHP的不能查看源代码只能把结果输出到页面上。为了实现这效果,这里使用ajax,定义一个JS变量,将变量赋值给data,再将data的参数赋值给php变量。

而PHP能赋值给JS是因为PHP是在服务器端被解析。服务器端不会解析JS代码,JS代码和HTML代码在服务器端都是原样输出的。只有标注php能识别的位置,PHP才会去进行解析并执行。而JS则是到了客户端才被客户的浏览器解析。

如果需要把JS的变量“赋值”给PHP,这就涉及交互了。就是所谓的提交,因为但凡你在浏览器看到的页面,无论是PHP,ASP,JSP等等,都是HTML文档,本地需要修改服务器端的数据,当然是要跟服务器进行交互。而进行交互的中间人就是JS,JS搭起客户与服务器交互的桥梁。

2.通过表单GET或POST方法获取值

(参考:http://jingyan.baidu.com/article/fd8044faf3cda05030137a47.html)通过Javascript将客户端要传递的数据先交给表单中的一个隐匿的标签中,然后以提交表单的形式,PPHP通过POST方法获取该数据。

1)mainfunc.js代码:

function func(){

var a = "Javascript变量";

document.getElementById("test").value = a;

}

2)test.php代码。

if(isset($_POST['sub'])){

$test = $_POST['test'];

echo "
".$test."----php变量显示";

}

?>

三. 超链接实现传递给PHP连接数据库

其实上面“一二”讲述的就是如何实现过程如下:

HTML=>超链接=>JavaScript=>PHP=>数据库由于Ajax没有实现,所以我后来发现一个更简单的方法,就是在超链接设置参数的时候,其实就可以直接获取相关参数,并不需要JavaScript去处理字符串获取相应的值。代码如下:

//testA.php设置超链接

超链接//testB.php中获取数据库内容

$hgi=new HttpPostInf();

$result=$hgi->doquery('2',"select * from Course_News whereCN_Nid='".$_GET['newid']."';");//解析json

$dj=json_decode($result,true);后面的文章我会讲述PHP和数据库的相关知识,此处你只需要知道如何获取连接即可。由于项目是我和另一个同学完成,他把后台数据库操作都用PHP类封装长好了(采用新浪SAE),所以我前端调用非常方便(采用apache)。该部分可以实现的初步效果如下图所示:

四. PHP输出JavaScript内容

该部分比较简单,将PHP变量放在HTML的隐匿类型的标签中,然后Javascript通过document.getElementById("").value来获取标签的值,即可得到PHP的变量值。也可以直接进行php与js变量的赋值。代码如下:

<?php $m=10; ?> //php的变量$m

var js = 20; //js变量js

var n=<?php echo $m; ?>; //php值赋值给js变量n

document.write(js+n); //结果:php的值能赋值给JS变量,并且可以在JS程序中运用

该代码输出的结果为30。另一种代码如下:

$test = "It's a test!";

?>

var test_js = document.getElementById("test").value;

//其它处理

?>

最后希望文章对大家有所帮助,下一篇想写写WAMP关于数据库方面的知识(Window+Apache+MySQL+PHP)。

(By:Eastmount 2015-2-20 下午4点  http://blog.csdn.net/eastmount/)

php 给html 赋值,PHP+JavaScript+HTML变量之间赋值及传递相关推荐

  1. javascript表单之间的数据传递

    今天有朋友问我关于用javascript来进行页面各表单之间的数据传递的问题,我以前也写过,不过从来没有注意,今天总结了一下,希望能够给大家一些帮助,也帮助我总结以前学过,用过的知识. 一,最简单的就 ...

  2. vue.js表格赋值_vue.js input框之间赋值方法

    如下所示: demo.html Index Page 测试 {{ result1 }} 测试 {{ result2 }} demo.js new Vue({ el: "#demo" ...

  3. vue.js html 属性赋值,vue.js input框之间赋值方法

    vue.js input框之间赋值方法 2019-01-07 编程之家 https://www.jb51.cc 编程之家收集整理的这篇文章主要介绍了vue.js input框之间赋值方法,编程之家小编 ...

  4. matlab 一个赋值变量赋值,MATLAB 基本语法----变量与赋值

    想到变量我就想起了C语言中的变量,理解了C语言中的变量,这里也就理解了 1. 数据格式 Matlab内部只有一种数据格式,双精度的二进制(64位数) ,16位有效数字, 但是数据的显示格式有八种(见上 ...

  5. php 对象赋值后改变成员变量影响赋值对象

    话不多说看代码 <?php class obj {}$obj1=new obj();//实例化对象 $obj2=$obj1;//赋值新对象 $obj1->name="test&q ...

  6. Oracle sql给一列赋值,简单的Oracle变量SQL赋值

    您的变量声明是正确的. DECLARE关键字用于定义PL / SQL块中的变量(其主体由BEGIN和END分隔;).你想如何使用这个变量? 以下PL / SQL对我来说很好: DECLARE star ...

  7. R语言编程 第一讲 变量与赋值

    R语言编程 第一讲 变量与赋值 R语言的变量名 赋值符号 <- 与 = 的区别 赋值符号 <- 的更多细节 Copy-on-Modify与Modify-in-Place 函数调用 列表 数 ...

  8. python 变量名重新赋值 变量重新赋值 通过字典的方式

    对数据表的操作经常需要重命名变量,或者中心赋值某个变量,可以使用numpy的where,也可以使用rename, 或者使用replace. 使用字典的方式比较方便.下面是代码: import pand ...

  9. vue data变量之间相互赋值或进行数据联动

    一.变量之间赋值 data:{domain:"domain",publicKey:"123",secretKey:"123",sub:&qu ...

最新文章

  1. 2020-12-03 python 字典 key 和value 互换
  2. 最短路上的统计(Floyd)
  3. Unix awk使用手册
  4. linux 文件的组织,Linux文件组织和目录结构
  5. svg html转换器,html – 将嵌入的SVG转换为PNG到位
  6. BIM族库下载——Revit灯具族库
  7. 华为荣耀立方中播放群晖nas中保存的视频
  8. redis配置文件参数说明及命令操作
  9. Pthread多线程
  10. 无视任何限制和权限 强制删除文件夹/文件
  11. C++ Redis mset 二进制数据接口封装方案
  12. 【译】Scheduling Tasks
  13. 计算机组成原理试题和答案,计算机组成原理试题(含答案)
  14. 免费获取全球生物量密度1km网格tif数据(GEDI L4B Gridded Aboveground Biomass Density, Version 2)
  15. 教你搭建属于自己的私人云服务器 再也不怕网盘关闭了
  16. VUX--小白初学使用安装
  17. 2021.3.19en
  18. Python使用正则表达式提取文本中ABAC和AABB形式的成语
  19. Docker 及 Docker Compose 安装及使用教程 (2020版)
  20. Windows10无法完成更新 正在撤销更改怎么解决转载

热门文章

  1. 2017.6.27 树上操作 思考记录
  2. 【英语学习】【Level 08】U01 Let's Read L5 You're a wizard, Harry.
  3. 【英语学习】【Level 07】U07 Stories of my Life L4 Not my best moment
  4. 【英语学习】【WOTD】charisma 释义/词源/示例
  5. 前端直播与SRS视频流服务的使用
  6. Android工程中三种库的区别:Private Libraries、Referenced Libraries、Dependency Libraries
  7. 移动开发-语音识别-调用讯飞平台提供的API
  8. 抓包及分析包的常用命令
  9. win7系统中出现“ 驱动器c中的卷没有标签...”的问题
  10. 解构变换矩阵:如何使变换矩阵分解为位移(T),旋转(R),缩放(S)矩阵