정말 문제가 여기에 무엇을 이해하지, 내가 다 내가 문제를 진단 할, 나는 문제가 발생되고 생각 어디 분리 관리 할 수 있습니다를 시도했습니다 (아래 분리 참조)MySQL 쿼리 아래에서 스크립트가 깨지지만 오류가 표시되지 않습니까?
는 여기 내 전체 코드 : 무작위로 선택된 URL이어야합니다
include("db_conn.php");
$conn = mysql_connect($db_host, $db_user, $db_pass) or die(mysql_error()); mysql_select_db($db_name) or die(mysql_error());;
$timestamp = time();
$add_time = time()+(60*60);
$query = "UPDATE links SET timestamp = '$add_time', hit_counter = '0' WHERE timestamp >= '$timestamp' AND overflow = 'NO'";
$result = mysql_query($query) or die(mysql_error());
$query = "SELECT * FROM links WHERE timestamp <= '$timestamp' AND hit_counter <= max_hits AND overflow = 'NO'";
$result = mysql_query($query);
$size = mysql_num_rows($result) or die(mysql_error());
if($size == 0) {
$query = "SELECT * FROM links WHERE overflow = 'YES'";
$result = mysql_query($query) or die(mysql_error());
$overflow = array();
while($row = mysql_fetch_assoc($result)) {
$overflow[] = $row['link'];
}
header("Location: http://www.google.com/?url=$overflow[0]");
}
$links = array();
$hits = array();
while($rows = mysql_fetch_assoc($result)) {
$links[] = $rows['link'];
$hits[] = $rows['hit_counter'];
}
$key = rand(0,$size);
$link = $links[$key];
$hit_counter = $hits[$key]+1;
$query = "UPDATE links SET hit_counter = '$hit_counter' WHERE link = '$link'";
$result = mysql_query($query) or die(mysql_error());*/
echo $link;
echo $hit_counter;
mysql_close($conn);
스크립트가 실행
, echo $link;
, 아무것도 표시되지 않습니다.
문제를 진단하기 위해 나는 echo "Hello World!";
을 점차적으로 스크립트로 옮기려고했는데 echo "Hello World!";
이 초기 MySQL 쿼리 앞에 위치 할 때까지 아무 것도 표시되지 않아 문제가 있다고 믿게됩니다. 거기에는 아무런 mysql_error()'s
도 인쇄되지 않습니다.
또한 $size = ...
아래 줄에 echo $size;
을 시도했지만 아무 것도 표시하지 않습니다.
절연 :
$query = "UPDATE links SET timestamp = '$add_time', hit_counter = '0' WHERE timestamp >= '$timestamp' AND overflow = 'NO'";
$result = mysql_query($query) or die(mysql_error());
$query = "SELECT * FROM links WHERE timestamp <= '$timestamp' AND hit_counter <= max_hits AND overflow = 'NO'";
$result = mysql_query($query);
$size = mysql_num_rows($result) or die(mysql_error());
사람이 스크립트의 나머지 부분이 실행되지 원인, 아직 오류를 반환하지 왜 어떤 생각을 가지고 있습니까?
도움을 주시면 감사하겠습니다.
모든 mysql_query 호출에 die mysql_error()를 추가 할 수 있습니까? –
죄송합니다. 내가 놓친 것을 실감하지 못했습니다. 지금 해드 리고 이에 따라 업데이트하겠습니다. – Avicinnian