> 백엔드 개발 > PHP 튜토리얼 > TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

WBOY
풀어 주다: 2016-09-11 11:34:20
원래의
1090명이 탐색했습니다.

저는 요즘 2011년에 회사에서 개발한 tp2.0 웹사이트를 작업하고 있습니다. 사실 저는 tp에 비교적 능숙하지만, 회사 웹사이트 코드를 보니 3.2 버전입니다. 제가 기본적인 추가, 삭제, 수정, 확인조차 할 수 없는 것 같다는 걸 발견했습니다. 소스 코드와 사진을 게시하고 제가 잘못 쓴 내용을 알아낼 수 있도록 누군가에게 도움을 요청하겠습니다

다시 업데이트하고, 제 웹사이트 스크린샷을 찍고, 개발자가 작성한 추가, 삭제, 수정 사항, 하단을 살펴보세요. 아직도 해결되지 않은 분, 버전 2.0 프로젝트를 가지고 계신 분 계신가요? 올려서 살펴보세요

우선, 내 추가 메소드 코드는 다음과 같습니다.
public function add(){
if(isPost){

<code>$model=M('Bcast');
$data['author']=$_POST['author'];
$data['title']=$_POST['title'];
$data['desc']=$_POST['desc'];
$data['url']=$_POST['url'];
$data['image']=$_POST['image'];
$model->data($data)->add();
$this->display();</code>
로그인 후 복사
로그인 후 복사

}
}
버전 2.0에서는 이렇게 간단한 코드 때문에 목숨을 잃었습니다

1: $this->display()를 어디에 넣어야할지 모르겠네요;; 3.2 이후에는 포스팅 안하고 else로 쓸 수 있는데 이 버전으로 해봤는데 전혀 표시가 안되네요

두 번째: 추가한 후 원래 성공을 추가할 계획이었지만 추가한 후 페이지를 클릭했더니 양식을 작성할 기회도 주지 않고 바로 성공이 표시되는 것을 발견했습니다.

자, 이제 양식에 대해 이야기해 보겠습니다

위 내용은 제 폼에 작성했습니다. BcastAction.class.php라는 페이지를 생성한 뒤, 그 안에 위의 메소드를 생성했습니다. 상속 역시 다른 액션과 동일하게 작성했습니다.

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

그럼 저는
Submit

을 눌렀습니다.

이후에는 내 Bcast 테이블에 전혀 삽입할 수 없으며 필드가 완전히 일치합니다.

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

스승님, 이 질문에서 제가 어디에서 잘못 되었나요?

인쇄하려고 했는데 인쇄한 페이지가 인쇄된 내용이 됩니다. 표시 내용을 쓰지 않으면 페이지가 전혀 보이지 않습니다.

조언 감사합니다!

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

이건 추가해야지, 존나 이렇게 써서 이해가 안가는데, 분명히 페이지에 카테고리를 지정하는 거 같은데, 하단 링크를 봤으니까 이렇게 추가한 건 확실해. 왼쪽 코너

그래서 정보를 삽입하는 것과 비슷한 다른 방법을 찾았는데, 왜 디스플레이가 없는 건지 궁금합니다. 그런데 정말 이 링크를 찾을 수가 없네요

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

여기에는 링크가 없으니 디스플레이를 작성할 필요가 없잖아요? add에 링크가 있어서 표시해야 하는데 왜 add 메소드에는 추가된 코드가 전혀 포함되지 않는 걸까요?
너무 혼란스럽네요

답글 내용:

저는 요즘 2011년에 회사에서 개발한 tp2.0 웹사이트를 작업하고 있습니다. 사실 저는 tp에 비교적 능숙하지만, 그것은 회사 웹사이트 코드를 살펴본 후 3.2 버전을 의미한다는 것을 알게 되었습니다. 기본적인 추가, 삭제, 수정, 점검도 할 수 없을 것 같습니다. 소스코드와 사진을 올려서 제가 잘못 쓴 부분이 있는지 도움을 요청하겠습니다

다시 업데이트하고, 내 웹사이트 스크린샷 찍고, 개발자가 작성한 추가, 삭제, 수정하고, 아직도 해결 안됐는데, 버전 2.0 프로젝트 있으신 분 계신가요? 올려서 살펴보세요

우선, 내 추가 메소드 코드는 다음과 같습니다.
public function add(){
if(isPost){

<code>$model=M('Bcast');
$data['author']=$_POST['author'];
$data['title']=$_POST['title'];
$data['desc']=$_POST['desc'];
$data['url']=$_POST['url'];
$data['image']=$_POST['image'];
$model->data($data)->add();
$this->display();</code>
로그인 후 복사
로그인 후 복사

}
}
버전 2.0에서는 이렇게 간단한 코드 때문에 목숨을 잃었습니다

1: $this->display()를 어디에 넣어야 할지 모르겠네요;; 3.2 이후에는 포스팅 안하고도 else로 쓸 수 있는데 이 버전으로 해봤는데 전혀 표시가 안되네요

두 번째: 추가한 후 원래 성공적으로 추가할 계획이었는데, 추가한 후 페이지를 클릭했더니 양식을 작성할 기회도 주지 않고 바로 성공이 표시되는 것을 발견했습니다.

자, 이제 양식에 대해 이야기해 보겠습니다

위 내용은 제 폼에 작성했습니다. BcastAction.class.php라는 페이지를 생성한 뒤, 그 안에 위의 메소드를 생성했습니다. 상속 역시 다른 액션과 동일하게 작성했습니다.

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

그렇습니다.
Submit

을 눌렀습니다.

이후에는 내 Bcast 테이블에 전혀 삽입할 수 없으며 필드가 완전히 일치합니다.

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

스승님, 이 질문에서 제가 어디에서 잘못 되었나요?

인쇄하려고 했는데 인쇄한 페이지가 인쇄된 내용이 됩니다. 표시 내용을 쓰지 않으면 페이지가 전혀 보이지 않습니다.

조언 감사합니다!

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

这个应该是添加,写成这样真是见鬼了,看不明白,这明显就是把分类assign到页面了,但我确定添加时是这个方法,因为我看左下角链接了

所以我找了另一个更像插入信息的方法,但让我疑惑的是,他咋没有display呢?不过我确实找不到这链接

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

他这个没链接,所以不需要写display吗?add有链接所以肯定要display的,可那add方法为什么压根没一句添加的代码啊?
费解死我了

我感觉你可以去翻翻thinkphp2.0的手册看看

<code>function add_info()
    {
        if(IS_POST)
        {
            $db= M();
            $db->create();
            $db->add();
            $this->success('添加成功',U('index'));
        }else{
            $this->display();
        }
    }</code>
로그인 후 복사

如何,能否解决?

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

回楼上的,我就这么写的,这是在服务器上,没安装编辑器

链接那会,是照着原来网站写的

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

dislay的地方放对的话,蹦的页面是正常的

1.首先判断控制器方法是否接受到数据,可以echo或者var_dump看结果;
2.如果add方法不行,可以用原生的sql语句试试。

public function add(){

<code>echo '<pre class="brush:php;toolbar:false">';
var_dump($_POST);
die();
if(isPost){

    $model=M('Bcast');
    $data['author']=$_POST['author'];
    $data['title']=$_POST['title'];
    $data['desc']=$_POST['desc'];
    $data['url']=$_POST['url'];
    $data['image']=$_POST['image'];
       echo '<pre class="brush:php;toolbar:false">';
        var_dump($data);
        die();
    $model->data($data)->add();
    $this->display();
}</code>
로그인 후 복사

}
上面你调两次试试
浏览器开f12,看看network,的返回值
你说插入了,然后字段都是空。为什么呢?这个明显就是你执行的add语句,没字段,或者字段被过滤,直接生成一条默认值的数组。

TP2.0에 대한 간단한 질문을 도와주세요. 온라인에서 정보를 찾을 수 없습니다. 감사합니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿