2010-03-05 3 views
1

Я с трудом со страницами, которые не показывают обновленные данные немедленно Вот мой текущий один:PHP скрипт, который перезагружает страницу

<?php 
$con = mysql_connect("localhost","root",""); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 

mysql_select_db("hospital", $con); 

$result = mysql_query("SELECT * FROM t2"); 

echo"<br>"; 
echo"<big>All In Patients</big>"; 
echo "<table border='1'> 
<tr> 
<th>Pnum</th> 
<th>HospNum</th> 
<th>RoomNum</th> 
<th>LastName</th> 
<th>FirstName</th> 
<th>MidName</th> 
<th>Address</th> 
<th>TelNum</th> 
<th>Stat</th> 
<th>Nurse</th> 
</tr>"; 

while($row = mysql_fetch_array($result)) 
    { 
    echo "<tr>"; 
    echo "<td>" . $row['PNUM'] . "</td>"; 
    echo "<td>" . $row['HOSPNUM'] . "</td>"; 
    echo "<td>" . $row['ROOMNUM'] . "</td>"; 
    echo "<td>" . $row['LASTNAME'] . "</td>"; 
     echo "<td>" . $row['FIRSTNAME'] . "</td>"; 
     echo "<td>" . $row['MIDNAME'] . "</td>"; 
      echo "<td>" . $row['ADDRESS'] . "</td>"; 
      echo "<td>" . $row['TELNUM'] . "</td>"; 
      echo "<td>" . $row['STAT'] . "</td>"; 
      echo "<td>" . $row['NURSE'] . "</td>"; 

    echo "</tr>"; 
    } 
echo "</table>"; 

mysql_close($con); 
?> 

<form> 
<input type="button" class='type_button' value="Print" onClick="window.print();" /> 
</form> 
</body> 
</html> 

Знаете ли вы какой-либо обходной путь, который мог бы сделать код, приведенный выше обновлен ? Потому что, когда я обновляю данные, а затем загружаю код выше. Он покажет только предыдущие данные, которые еще не обновлены. Вам нужно будет щелкнуть правой кнопкой мыши и обновить страницу, чтобы увидеть эффекты.

+0

проблема с кешем? –

+0

вы должны сделать UPDATE в своем коде выше SELECT, тогда он должен работать, если нет, тогда проблема находится где-то в другом месте –

+0

не проблема с кэшем, Ive пробовал код ниже, но не работает – user225269

ответ

1

Вы можете попробовать установить заголовки кеша.

<?php 
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past 
?> 

Или, может быть, вы извлекаете данные из кеширования из MySQL?

SELECT SQL_NO_CACHE * FROM t2 
Смежные вопросы