2017-07-03 37 views
-4

我正在寻找一种方法来读取PHP中的图像src或读取PHP中的JavaScript变量。在PHP中阅读JavaScript变量

该计划: 我有一个使用base64 Canvas方法拍摄图像的JavaScript摄像头脚本,但我需要它使用PHP更新MySQL记录。

尝试了很多方法后; cookie,提交表单,ajax。我决定在这里发帖是最好的主意。

+0

查找'什么是允许的最大大小为cookie'请 – RiggsFolly

+0

那么,有没有其他方法? –

+0

请提供一个正确的[mcve]并将其带入问题。不建议链接到外部来源。 – Bugs

回答

0

(!)请谨慎使用。这是一个概念证明。在PHP中,您绝对不应该只接受和计算客户端数据,不要检查恶意代码并清理输入。 (!)

您可以通过将您的base64源代码放入formData,使用AJAX将其发送到PHP。

的Javascript

// ajax.js 
var xhr = new XMLHttpRequest(); // initialize a new XHR 
var formData = new FormData(); // initialize form data 
var myFile = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAACWCAYAAABkW7XSAAAEaElEQVR4Xu3UgQkAMAwCwXb/oS10i4fLBHIG77YdR4AAgYDANViBlkQkQOALGCyPQIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiDwAIGUVl1ZhH69AAAAAElFTkSuQmCC'; 

xhr.open('POST', '/requestHandler.php') // init your request 
xhr.onreadystatechange = function() { 
// check if the server was able to compute the XHR 
    if(xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) { 
     // handle the response 
     console.log(xhr.responseText) // log the PHP output 
    } 
} 

// a form data element needs a descriptor/name and a value. 
formData.append('myfile', myFile); 
xhr.send(formData); // send your xhr to the server 

PHP

// requestHandler.php 
<?php 
if('$_POST') { 
    echo $_POST['myfile']; // this is your image source 
} 

更多信息:

+1

这看起来像我正在寻找的确切的东西。我并不太担心事物的安全性,因为这只会在内部Web服务器上进行。 –

+0

很高兴我能帮你。顺便说一下,你收到许多downvotes,因为你没有提供足够的代码,社区可以改善。 Stackoverflow会专门帮助那些遇到已解决问题的人。这样做的缺点是它对新用户来说似乎具有很大的毒性。这类问题通常会被低估,并被标记为重复,因为没有明显的回应,也没有解释。请参阅:https://stackoverflow.com/help/how-to-ask –

+0

此外,您的问题的标题是误导。它读取“PHP - 从id读取img src”,但你没有在你的问题中提及任何ID。我建议将它改为“在PHP中读取JavaScript变量”或类似的东西 –