2016-08-30 1 views
1

각 페이지마다 약 7 개의 개별 테이블 제목이있는 몇 개의 HTML 페이지가 있습니다. 테이블 헤더는 MySQL 데이터베이스에서 생성됩니다.PHP 함수를 여러 번 호출하여 매번 다른 변수를 반환합니다.

각 페이지는 최대 7 개의 다른 표제를 가질 수 있습니다.

MySQL 쿼리 (하나의 테이블 제목 만있는 페이지에서 제대로 작동 함)가 포함 된 파일이 있습니다.이 MySQL 쿼리는 올바른 테이블 형식의 데이터베이스를 선택하기위한 인수 ($ table)를 허용합니다.

getTable('table_name'); // table_name is the name of the table I want. 

그래서 내 페이지가로드, 함수가 호출됩니다 여러 번하고 다른 "TABLE_NAME을"

function getTable() { 
      return $table; 
} 

그리고 다음과 같이 호출 :

내 기능은 다음과 같습니다 $ table 변수를 사용하여 매번 include 파일로 전달됩니다.

그러나이 기능을 전혀 사용할 수 없습니다.

필자는 include 파일과 함수가 들어있는 파일에서 "Notice : Undefined variable : table in"을 얻었습니다.

내가 뭘 잘못하고 있니?

UPDATE

내가 추가하는 경우 :

$table = "table_header1"; 

HTML을 포함하는 파일의 상단에 - 다음이 포함 파일로 전달됩니다.

하지만 (현재 포함 파일에있는) 함수를 사용하면 $ table 매개 변수가 전달되지 않습니다.

전역 변수 문제입니까?

function getTable($tableName) { 
     $table = mysqli_query("SELECT * FROM $tableName"); 
     return $table; 
} 

또한 포맷이 당신에 의해 수행되어야한다 : 같은

<?php 
// top of file 
$table = "table_header1"; 
include('header_inc.php'); 
// this works - the variable is passed to header.inc.php 
?> 

<?php 
// top of file 
include('header_inc.php'); 
getTable('table_header1'); 
echo $table; 
// this ^^ does not work 
?> 
+1

인자 인자'function getTable ($ table)'을 정의해야합니다. 이 함수는 실제로 전달한 문자열과 동일한 문자열을 반환 할 것인가? –

+0

@ Magnus - 예 그걸 시도했지만 여전히 작동하지 않습니다. – Tony

+0

@Syed - 나에게도 같은 오류가 발생합니다. – Tony

답변

0

귀하의 방법이 있어야한다. 대신에 정적 변수의

function getTable($table = null) { 
    return $table; 
} 

기본 값으로 함수 매개 변수를 사용

0

간단한 당신은 매개 변수를 전달합니다.

관련 문제