2014-04-30 4 views
0

리눅스가 아니라 작동합니다. 내 PHP 코딩이 위대한 아니라는 것을 받아 들일 수, 저는 초보자입니다. 양식이 있고 데이터를 게시합니다. 이제 Windows 서버에 있는지, 내가 얻을 :주의 : 정의되지 않은 인덱스 변수. PHP 스크립트는 내가 리눅스가 아닌 윈도우에서 작동하는 PHP 스크립트를 윈도우

공지 사항 : 정의되지 않은 인덱스 : C에서 NMR : \ Apache24 \ htdocs를 \ index.php를 라인 (31) ...

등 에.

내가 영으로 모든 변수를 선언하고는 isset을 사용하여 시도,하지만 작동하지 않습니다. 아마도 나는 isset을 잘못 사용하고 있습니다. 누군가 나를 도울 수 있습니까?

<html> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
<link rel="shortcut icon" href="http://www.hackmaine.org/favicon.ico"> 
<link rel="stylesheet" type="text/css" href="sty.css"> 
    <title>NMR Scheduler</title> 
</head> 
<body> 

<?PHP 
$Unity = 'unchecked'; 
$Inova = 'unchecked'; 
$Experiment = $duration = $ToD = $startTime = $ddate = $nmr = $UName = 0; 

if (isset($_POST['Submit1'])) 
{ 
    $selected_radio = $_POST['nmr']; 
    switch ($selected_radio) 
    { 
     case Unity: 
      break; 
     case Inova: 
      break; 
     default: 
     echo "Select an NMR"; 
    } 
} 

isset($Experiment, $duration, $ToD, $startTime, $ddate, $UName);  

    $reg_wvar=$_POST['nmr']; 
    $reg_UName=$_POST['UName']; 
    $reg_Date=$_POST['ddate']; 
    $reg_startTime=$_POST['startTime']; 
    $reg_ToD=$_POST['ToD']; 
    $reg_duration=$_POST['duration']; 
    $reg_Experiment=$_POST['Experiment']; 

    $stringy = "$reg_wvar, $reg_UName, $reg_Date, $reg_startTime $reg_ToD, $reg_duration, $reg_Experiment \n"; 
    echo $stringy; 
    $filename = 'newEntry.txt'; 
// Let's make sure the file exists and is writeable first. 
if (is_writable($filename)) { 
    if (!$handle = fopen($filename, 'a')) { 
     echo "Cannot open file ($filename)"; 
     exit; 
    } 
    // Write $somecontent to our opened file. 
    if (fwrite($handle, $stringy) === FALSE) { 
     echo "Cannot write to file ($filename)"; 
     exit; 
    } 
//echo "Success, wrote ($somecontent) to file ($filename)"; 
    fclose($handle); 
    } else { 
    echo "Data not written, Make Sure you selected an NMR"; 
} 
?> 

<center> 
<FORM ACTION="if.php" method="post"> 
<h2>NMR Usage Scheduler</h2> 
<br /><br /> 
<INPUT TYPE = 'Radio' Name ='nmr' value= 'Unity'>Unity 
<INPUT TYPE = 'Radio' Name ='nmr' value= 'Inova' >Inova<br /><br /> 
<B>Your Name :</B><input type="text" size="20" maxlength="10" name="UName" required><br /><br /> 
<B>Enter Date (mm/dd):</B> <input type="text" size="20" maxlength="5" name="ddate" required><br /><br /> 
<B>Start Time (hh:mm):</B> <input type="text" size="8" maxlength="5" name="startTime" required> 
<INPUT TYPE = 'Radio' Name ='ToD' value= 'AM' >AM 
<INPUT TYPE = 'Radio' Name ='ToD' value= 'PM' checked>PM 
<br /><br /> 
<B>Duration: </B> <input type="text" size="20" maxlength="5" name="duration" required><br /><br /> 
<B>Experiment:</B> <input type="text" size="20" maxlength="5" name="Experiment" required><br /><br /> 
<INPUT TYPE = "Submit" Name = "Submit1" VALUE = "Submit"> 
</FORM> 
</center> 


</body> 
</html> 
+0

는 지적 오류는 통지이며, 그것은 아무것도 차단하지 않습니다. 다른 오류가 있습니까? 당신은 NMR에 대한 통지를 얻고있는 곳 –

+0

이를 사용하는 경우 ($ _ POST [ 'NMR']) {코드}, 나는이 문제 – Ron

+0

그것은 페이지에 표시를 해결 것이라 생각합니다. 어떻게 숨길 수 있습니까? 아니면 고쳐? – j0h

답변

1
if(isset($_POST['nmr'], $_POST['UName'], ...) { 
$reg_wvar=$_POST['nmr']; 
    $reg_UName=$_POST['UName']; 
    ... 
}