2012-12-07 3 views
0

내 플러그인을 만들고 싶지만 양식 처리 방법을 모릅니다. 나는 이것을 이해할 수없는어떻게 워드 프레스 플러그인의 설정 페이지에서 양식을 처리합니까?

<form action="<?php echo str_replace('%7E', '~', $_SERVER['REQUEST_URI']); ?>" method="post"> 
    <label for="consumerkey" style="font-weight:bold;display:block;width:150px;">Consumer Key:</label> <input type="text" value="" id="consumerkey" name="consumerkey" /> 
    <label for="consumersecret" style="font-weight:bold;display:block;width:150px;margin-top:5px;">Consumer Secret:</label> <input type="text" value="" id="consumersecret" name="consumersecret" /> 
    <input type="submit" value="Save" style="display:block;margin-top:10px;" /> 
</form> 

: 나는 PHP에 만 많은 책을 읽었습니다

action="php echo str_replace('%7E', '~', $_SERVER['REQUEST_URI'])" 

예를 들어 나는 트위터 스트림 플러그인의 설정 페이지에서이 코드를 톱 :

action="somescript.php" for the URL. 

어디서부터 내 양식을 처리 할 코드를 어디에 넣어야할지 모르겠습니다.

wordpress/wp-content/plugins/scheduler/scheduler.php에있는 scheduler.php이라는 플러그인의 PHP 파일에 코드를 넣을 수 있습니까?

또한 워드 프레스에서 양식을 처리하는 방법에 대한 몇 가지 예를 보여주십시오.

그건 그렇고, 내 설정 페이지에는 사용자 이름과 암호의 두 필드가 필요합니다. 관리자가 제출 버튼을 누르면 필드의 내용을 데이터베이스에 저장하고 싶습니다.

그리고

action="php echo str_replace('%7E', '~', $_SERVER['REQUEST_URI'])" 

action="/sheduled/wp-admin/options-general.php?page=twitterstreamauth" 

로 변환하는 방법을 나는 아직도 이해할 수 없다 죄송합니다 제 영어는 매우 좋지 않다. 주의 해 주셔서 대단히 감사합니다.

답변

3

googling %7E으로, 나는 그것이 틸드 (~)를 나타내는 유닉스에서 예약 된 코드라는 것을 발견했다. 많은 서버가 Unix 운영 체제를 실행하기 때문에 심볼 %7E을 사용할 수 없습니다. 그러나 웹 주소 나 페이지의 어딘가에서 사용될 수있는 기호 ~을 사용할 수 있습니다.

php echo str_replace('%7E', '~', $_SERVER['REQUEST_URI'])REQUEST_URI 키에서 $_SERVER (특수 배열)에 저장된 문자열을 사용합니다. 그런 다음 %7E의 모든 항목을 ~으로 바꿉니다. 어쩌면 99 %의 사례에서 기호는 대체되지 않지만 여전히 URL에 물결 표시가 나타날 수 있습니다. 아주 간단하지만 echo은 편집 된 문자열을 반향합니다. 문자열이 단지 HTML 코드에 반향되도록이 경우

이 문자열 /sheduled/wp-admin/options-general.php?page=twitterstreamauth$_SERVER['REQUEST_URI']에 의해 반환, 기호 %7E 찾을 수 없습니다.

action="..."

는 브라우저가 폼이 제출 될 때 데이터베이스에 양식의 내용을 저장하는 방법을 모르는 경우, options-general.php?page=twitterstreamauth

또한 파일을 열고이 경우, 실행해야하는 작업입니다 , 당신은 충분한 PHP 책을 읽지 않았다. 데이터베이스에 무언가를 저장하려면 PHP + MySQL을 배워야합니다.

이 정보가 도움이 되었기를 바랍니다.