$query = "SELECT Name,Mobile,Website,Rating FROM grand_table order by 4";
while( $data = mysql_fetch_array($query))
{
echo("<tr><td>$data[0]</td><td>$data[1]</td><td>$data[2]</td><td>$data[3]</td></tr>");
}
Вместо использования запроса WHERE вы можете использовать этот запрос ORDER BY. Это намного лучше, чем это для использования запроса.
Я выполнил этот запрос и не получаю никаких ошибок, таких как параметр или логический.
Проблема в строке,
int([x[age1]])
Что вы хотите
x = int(age1)
Вам также нужно преобразовать int в строку для вывода ...
print "Hi, " + name1+ " you will be 21 in: " + str(twentyone) + " years."
Полный сценарий выглядит,
name1 = raw_input("What's your name? ")
age1 = raw_input ("how old are you? ")
x = 0
x = int(age1)
twentyone = 21 - x
print "Hi, " + name1+ " you will be 21 in: " + str(twentyone) + " years."
Когда вы вводите x = 0
, который создает новую переменную int
(имя) и присваивает ей нуль.
Когда вы вводите x[age1]
, который пытается получить доступ к age1
й записи, как будто x
были массивом.
Что вы пытаетесь сделать здесь: int([x[age1]])
?? Это не имеет смысла.
Вам просто нужно указать возрастный вход как int
:
name1 = raw_input("What's your name? ")
age1 = raw_input ("how old are you? ")
twentyone = 21 - int(age1)
print "Hi, %s you will be 21 in: %d years." % (name1, twentyone)
Когда вы пишете x = 0
, x
является int ... поэтому вы не можете делать x[age1]
, потому что x
- int
name1 = input("What's your name? ")
age1 = int(input ("how old are you? "))
twentyone = str(21 - int(age1))
if age1<21:
print ("Hi, " + name1+ " you will be 21 in: " + twentyone + " years.")
else:
print("You are over the age of 21")
Вам нужно сначала преобразовать age1 в int, чтобы он мог сделать минус. После этого верните результат в строку для отображения:
name1 = raw_input("What's your name? ")
age1 = raw_input ("how old are you? ")
twentyone = str(21 - int(age1))
print "Hi, " + name1+ " you will be 21 in: " + twentyone + " years."