HTML 형식이 있습니다.
<form>
<label><input type="hidden" name="pNameChange" value=""></label>
</form>
이 입력 값을 양식으로 제출하지 않고 PHP에서 얻고 싶습니다.
이것은 내 자바 스크립트입니다.
var pName= null;
$(document).ready(function(){
$('img').click(function(){
pName= $(this).attr("name");
console.log(pName);
});
});
내 PHP :
$pName = isset($_POST['pNameChange']) ? $_POST['value'] : '';
내가 원하는 것은. 사진을 클릭하면
1. 그림의 이름 속성 값이 변수 pName
(javascript)에 저장됩니다.
2. 그런 다음 양식으로 이동하여 양식의 값을 변수 pName
(javascript)로 변경합니다.
3.php는 (이제와 같아야하는 pName
) 폼의 값을 선택합니다.
4. 그런 다음 변수 $pName
(php)에 저장합니다 .
5. 또한 $pName
웹 사이트의 모든 페이지에서 (php)가 전 세계적으로 사용 되기를 바랍니다 .
편집하다
이것은 내 색인 페이지입니다.
<?php
$pName = isset($_POST['pNameChange']) ? $_POST['value'] : '';
$db_connection = mysqli_connect('localhost','root','',"project_online_planner");
if (!$db_connection){
die('Failed to connect to MySql:'.mysql_error());
}
$query="SELECT * FROM project limit 5 ";
$results = mysqli_query($db_connection,$query);
$intro=mysqli_fetch_assoc($results);
?>
<!DOCTYPE HTML>
<html>
<head>
<title>Project planner online</title>
<script src="http://code.jquery.com/jquery-2.1.0.min.js"></script>
<script type="text/javascript" src="ppo.js"></script>
<link rel="stylesheet" href="ppo.css"/>
</head>
<body>
<div id="bgNav">
<div id="login">
<a href="register.php">Register</a>
<a href="login.php">Log in</a>
</div>
<nav id="nav">
<a href="index.php">Home</a>
</nav>
</div>
<h2 class="titlePage">Home</h2>
<div id="bgTile">
<?php
while($row = mysqli_fetch_array($results))
{
$project = $row["name"];
echo nl2br("<a href='project.php'>" ."<img name=\"$project\" width='100px' alt='Procject name' height='100px' class='tile' src=". $row['image'] ."/>". "</a>");
}
?>
<a href="allprojects.php"><div class="tile" id="tileM"><h2>Meer</h2></div></a>
</div>
<form>
<label><input type="hidden" name="pNameChange" value=""></label>
</form>
</body>
</html>
내가 원하는 것 : 이미지를 클릭하면 (php) $pName
가 (javascript)의 값과 같은 프로젝트 페이지로 전송됩니다.pName
프로젝트 페이지 :
<?php
$newRecord = null;
$pName = isset($_POST['pNameChange']) ? $_POST['value'] : '';
$db_connection = mysqli_connect('localhost','root','',"project_online_planner");
if (!$db_connection){
die('Failed to connect to MySql:'.mysql_error());
}
//insert into database
if(isset($_POST['insertComments'])){
include('connect-mysql.php');
$username = $_POST['username'];
$comment = $_POST['comment'];
$sqlinsert = "INSERT INTO user_comments (username, comment, project) VALUES ('$username', '$comment', '$pName')";
if (!mysqli_query($db_connection, $sqlinsert)){
die('error inserting new record');
}
else{
$newRecord = "1 record added";
}//end nested statement
}
//text from database
$query="SELECT * FROM user_comments where project = '$pName' ";
$results = mysqli_query($db_connection,$query);
$intro=mysqli_fetch_assoc($results);
$query2="SELECT * FROM project where name = '$pName' ";
$results2 = mysqli_query($db_connection,$query2);
$intro2=mysqli_fetch_assoc($results2);
?>
<!DOCTYPE HTML>
<html>
<head>
<title>Project planner online</title>
<script src="http://code.jquery.com/jquery-2.1.0.min.js"></script>
<script type="text/javascript" src="ppo.js"></script>
<link rel="stylesheet" href="ppo.css"/>
</head>
<body>
<div id="intro">
</div>
<div id="bgNav">
<nav id="nav">
<a href="index.php">Home</a>
<a class="rightNav" href="register.php">Register</a>
<a class="rightNav" href="login.php">Log in</a>
</nav>
</div>
<div id="projectTile">
<span id="statusCheck"><?php print_r($intro2["status"]); ?></span>
<h2 id="prTitle"><?php print_r($intro2["name"]); ?></h2>
<div id="prPic"><img width="300" height="200" src="<?php print_r($intro2["image"]); ?>"></div>
<div id="prDescription"><?php print_r($intro2["description"]); ?></div>
</div>
<div id="comments">
<?php
while($row = mysqli_fetch_array($results))
{
echo nl2br("<div class='profile_comments'>" . $row['username'] . "</div>");
echo nl2br("<div class='comment_comments'>" . $row['comment'] . "</div>");
}
?>
</div>
<div id="uploadComments">
<form method="post" action="project.php">
<label for="name"><input type="hidden" name="insertComments" value="true"></label>
<fieldset>
<legend>comment</legend>
<label>Name:<input type="text" id="name" name="username" value=""></label><br/>
<label>Comments: <textarea name="comment" id="comment"></textarea></label>
<input type="submit" value="Submit" id="submitComment">
</fieldset>
</form>
</div>
<?php
echo $newRecord;
?>
<form>
<label><input type="hidden" name="pNameChange" value=""></label>
</form>
</body>
</html>
HTML :
페이지에 1 개 이상의 이미지가 있습니까? 이미지에 ID를 추가하면 더 좋습니다. 원하는 작업을 위해 양식 및 숨겨진 필드가 필요하지 않습니다.
이미지에 다음과 같은 ID가 있는지 확인하십시오. <img id="imageID"...
자바 스크립트 :
var pName= null;
$(document).ready(function(){
$('#imageID').click(function(){
pName= $(this).attr("name");
$.post("project.php", { pNameChange: pName },
function(data) {
// do something here.
});
});
});
위의 코드는 예상대로 작동합니다. 이제 project.php> $ _POST [ 'pNameChange']에서 pName (이미지 이름 속성)의 값을 받아야합니다.
모든 페이지에서 $ pName을 전 세계에서 사용할 수 있다고 말씀 하셨을 때 원하는 것이 무엇인지 이해하지 못했습니다. 더 자세히 설명해주세요. 쿠키 / 세션으로 저장하는 방법을 살펴볼 수 있습니까?
편집하다:
세션을 pName 값으로 사용하는 것을 고려하십시오 ... 파일 시작에서 세션을 간단히 시작 / 재개함으로써 :
<?PHP
session_start();
그리고...
값을 설정 / 업데이트하려면 :
if(isset($_POST["pNameChange"]))
$_SESSION["pName"] = $_POST["pNameChange"];
그런 다음 모든 페이지 $_SESSION["pName"]
대신 사용하십시오 $pName
.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다