초급 수준의 PHP에서이 비디오 자습서를 따라 코딩 할 때 문제가 발생했습니다. 나는 그것을 위해 일하는 데 문제가 있습니다. 이 오류는 브라우저에서 프로젝트를로드하려고 할 때 문제가 mailprocess.php 파일의 내 코드에서 44 행에 있음을 나타냅니다. 이 오류가 속한 코드의 44 번째 줄은 if 문의 시작 부분입니다. if (isset($$item) && !$empty($$item))
치명적 오류 : 함수 이름은 문자열이어야합니다.
그러나 비디오 자습서를 진행하는 강사가 똑같은 일을 할 때도 똑같이 작동합니다. 그래서 나는 왜 그것이 나를 위해 일하지 않는지 이해하지 못한다. 또한 코드 블록 형식 도구에서 형식을 올바르게 지정하려면 내 사본/붙여 넣은 코드를 가져 오는 데 문제가 있습니다. 따라서 새 항목으로 완벽하게 정렬되지 않았 으면 참아주십시오. 배우고 나는 PHP를 찾는 것이 다소 어렵다. 이것이 나를 위해 일하게하는 어떤 도움도 크게 감사 할 것입니다. 여기
내 mailprocess.php 파일 및 코드 : : 여기
<?php
$suspect = false;
$pattern = '/Content-Type:|Bcc:|Cc:/i'; //Perl compatible reg-x to filter
$empty = false;
function isSupect($val, $pattern, &$suspect) {
if (is_array($val)) {
foreach ($val as $item) {
isSuspect($item, $pattern, $suspect);
}
}else {
if (preg_match($pattern, $val)) {
$suspect = true;
}
}
isSuspect($_POST, $pattern, $suspect);
}
if (!$suspect) {
foreach ($_POST as $key => $value) {
$temp = is_array($value) ? $value : trim($value); //removes white space
if (empty($temp) && in_array($key, $required)) {
$missing[] = $key;
$$key = '';
} elseif (in_array($key, $expected)) {
$$key = $temp;
}
}
}
if (!$suspect && !$empty['$email']) {
$validemail = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
if ($validemail) {
$headers .= "\r\nReply-to: $validemail";
} else {
$errors['email'] = true;
}
}
if (!$suspect && !$missing && !$errors){
$message = ' ';
foreach ($expected as $item) {
if (isset($$item) && !$empty($$item)){
$val = $$item;
} else {
$val = 'Not selected';
}
if (is_array($val)){
$val = implode(', ', $val);
}
$item = str_replace(array('_', '-'), '', $item);
$message .= ucfirst($item) . ": $val\r\n\r\n";
}
$message = wordwrap($message, 70);
$mailSent = true;
}
그리고 강사가 자신의 코드가 무엇을 여기
내가 점점 오전 오류의 브라우저 출력 :
고마워요, 그게 수정되었습니다 :) –
당신은 환영합니다. – matwr