2012-04-18 2 views
2

재설정 버튼을 누르면 텍스트에서 echo $ _POST를 어떻게 제거 할 수 있습니까? 여기에 내 코드가있다. 나는 이것이 옳다고 생각하지만 전혀 작동하지 않는다.

HTML

<input type="text" class="text" name="email" value="<?php if(isset($_POST['email'])) echo $_POST['email']; ?>"/> 

<input type="reset" value="Clear" name="reset" /> 

PHP

if (isset($_POST['reset'])){ 
    unset($_POST); 
} 

웹 사이트 참조 : http://www.veryinternational.net/skunk5/page-4.php

참고 : 필수 필드 중 하나를 채우기 위해 시도 (빨간색 별표로 표시) 및 왼쪽의 첫 번째 버튼을 누릅니다. 두 번째 단추를 누르면 텍스트 상자의 메시지를 지워야합니다.

+3

참고로, 귀하는 사이트에 심각한 XSS 취약점이 있습니다. HTML 컨텍스트에서 사용하기 전에 모든 데이터를'htmlspecialchars() '변수로 이스케이프해야합니다. 이렇게하면보다 안전하게 유지할 수있을뿐 아니라 따옴표와 같은 항목이 양식에서 게시 될 때 페이지가 깨지는 문제를 피할 수 있습니다. – Brad

+0

예제가 도메인에 있는지 여부에 상관없이 PHP 코드가 실제 양식 출력 코드 앞에 놓여 있는지 확인하십시오. 그렇지 않으면 양식 필드를 채우기 위해 사용될 때까지 POST 페이로드가 지워지지 않습니다. – Ariel

+0

jquery를 구현하는 방법을 살펴 보겠습니다. 선택한 div의 내부 html을 변경하는 jquery 함수를 사용할 수 있습니다. 나는 이것을 시작하기 위해 따라갈 것이다. http://stackoverflow.com/questions/5796609/change-elements-upon-button-press 정말 어렵지 않습니다. – chapman84

답변

0

입니다. 즉, 페이지를 생성 할 때 이미 입력 한 데이터가 그대로 유지됩니다. 이것이 링크 된 페이지가하는 방식입니다.

<input type="submit" value="Clear" name="reset" /> 

그러면 현재 채워진 상태로 양식이 제출됩니다. 그러나 버튼을 제출 버튼으로 설정하면 $_POST 또는 $_GET 데이터에 ["reset"]=> string(5) "Clear"이 표시됩니다. 나는 이것이 당신이 찾고 있었던 것보다 더 많은 것이라고 생각합니다.

+2

이 하나의 작품, 고마워. 리셋 버튼을 누르면 페이지가 더 빨리로드되어야합니다. – Zaoldyeck

+0

"재설정"버전은 양식을 보내지 않고 원래의 상태로 설정합니다. –

2

자바 스크립트가 필요한 양식을 재설정하려면 PHP가 필요하지 않습니다.

입력 타입 재설정 HTML 내장은 PHP가에 별도로

, $ _POST위한 테스트 [ '재설정'(사용자의 PHP $ _POST [메일] 값이다) 원래 값 형태 재설정 HTML 재설정 단추가 제출하지 않기 때문에 절대 실행하지 마십시오.

양식 필드 값을 공백으로 변경하려면 Java 스크립트 기능을 사용해야합니다. 사용자가 어떤 입력을 제작하기 전에,

<input type="reset" value="リセット" name="reset" /> 

이 원래 상태로 HTML 양식을 재설정 : 여기에 당신이 여기 리셋의 버전이 예

<form name="data_entry" action="#"> 

Company Name: <input type="text" size="35" name="company_name"> 

Select Business Type: <input type="radio" name="business_category" value="1"> Manufacturer 
<input type="radio" name="business_category" value="2"> Whole Sale Supplier 
<input type="radio" name="business_category" value="3"> Retailer 
<input type="radio" name="business_category" value="4"> Service Provider 

Email Address: <input type="text" size="30" name="email"> 

Keep Information Private: <input type="checkbox" name="privacy"> 

<input type="button" name="reset_form" value="Reset Form" onclick="this.form.reset();"> 

<input type="button" name="clear" value="Clear Form" onclick="clearForm(this.form);"> 
</form> 
+0

http://www.javascript-coder.com/files/javascript-clear-form/javascript-reset-form-example.html –

+0

또는 http://www.javascript-coder.com/files/javascript-clear- form/javascript-clear-form.js 스크립트 자체에 대한 JS 파일 – Ariel

+1

고마워요.하지만 전에 이걸 시도해 봤는데 다른 브라우저에서 작동하지 않아서 양식을 재설정하는 다른 방법을 찾아야 만합니다. – Zaoldyeck

관련 문제