2017-11-26 11 views
-2

나는 heroku에 PHP 응용 프로그램을 배포하려고합니다. 나는 clearDB에 테이블을 추가하지만,이 부분에 붙어있다 : 을 작곡가에요청한 PHP 확장자 ext-mysql *가 시스템에 없습니다. PHP에서 7.1.7

"ext-mysql":"*" 

이 줄을 추가 한 후. json 그것은 나를 말하는 오류가 오류 : 'composer.json'은 'require'안에 종속성을 나열하지만 'composer.lock'을 찾지 못했습니다. 필요한 경우 'composer.lock'을 다시 생성하려면 'composer update'를 실행하고 저장소에 커밋하십시오.

php composer.phar update 

를 실행 한 후

나는

The requested PHP extension ext-mysql * is missing from your system. Install or enable PHP's mysql extension. 
+2

MySQL 확장은 PHP 7에서 제거되었습니다 - http://php.net/manual/en/function.mysql-query.php. 대신에 MySQLi 또는 PDO를 사용하십시오. – panther

+0

Heroku가 PHP 7을 직접 배포하고 있는데, 어떻게 PHP 7과 mysqli/pdo를 사용 하느냐에 따라 PHP 7과 5를 사용하지 않도록 지정할 수 있습니다. – Thesoham24

+0

은 mysql과 PHP5의 오래된 위험을 잊어 버렸습니다. – panther

답변

1

이에서 문서를 읽어 보시기 바랍니다 도움이되기를 바랍니다이 오류를 얻을, 당신이해야 할 일의 모든 단계를 설명합니다. 파란색 상자는 문제를 정확히 설명합니다 (로컬로 확장 기능을 사용하지 않고 composer update이 실패 할 경우 수행 할 작업).

3

내가이

http://php.net/manual/en/mysql.php

PHP 5 users can choose between the deprecated mysql extension, mysqli, or PDO_MySQL. PHP 7 removes the mysql extension, leaving only the latter two options.

+0

SQL 덤프가있어서 사용해야합니다. – Thesoham24

+1

@ Thesoham24 mysqli 또는 PDO를 사용하여 보관 처리를 시도하십시오. 새로운 프로젝트라면 코드를 편집하십시오. PHP 7은 mysql을 제거 했으므로 PHP 버전을 PHP 5로 다운 그레이드하거나 사용할 수 없습니다. 빠른 편집을 위해 GLOBAL 객체를 사용하여 mysql을 mysqli로 변환하는 코드가 있습니다. IMO는 PDO를 사용합니다. 그게 최선의 선택입니다. – NewBee

+1

이 링크는 질문에 대답 할 수 있지만 답변의 핵심 부분을 여기에 포함시키고 참조 용 링크를 제공하는 것이 좋습니다. 링크 된 페이지가 변경되면 링크 전용 답변이 유효하지 않게 될 수 있습니다. - [리뷰에서] (리뷰/저품절 포스트/18067780) –