Вобщем есть код:
<body>
<?php
$arr[1]="Apples";
$arr[2]="Potatoes";
$arr[3]="Pears";
$arr[4]="Peanuts";
$arr[5]="Weird shit";
$arrnum=count($arr);
$halfnum=($arrnum/2)-0.5;
?>
<div style="clear:both;">Overall: <?= $arrnum," ",$halfnum ?></div>
<div id="b1" style="width:500px;float:left;"><ul>
<?php
$i=0;
for($i=0; $i>($halfnum+1); $i++){
echo "<li>",$arr[$i],"</li>";
}
?>
</ul></div>
<div id="b2" style="width:500px;margin-left:500px;;"><ul>
<?php
$p=0;
while($p>=$halfnum){
$s=$halfnum+$i;
echo "<li>";
echo $arr[$s];
$p++;
}
?>
</ul></div>
</body>
Суть его в том, чтобы вывести первые три строки в одной колонке, а две оставшиеся строки во второй колонке. И кароче не работает.
Итак, вопрос: как это поправить?
п.с. юзаю последний денвер
Спустя 1 час, 45 минут, 4 секунды (2.03.2010 - 01:16) John_761 написал(а):
Разобраться в том, что написал
Условие в 1м цикле вообще не выполняется, так как $i равняется нулю, и никогда при таких условиях не будет больше либо равна переменной $halfnum
Нужно изменить на <=
Далее у тебя в массиве 0й элемент содержит пустоту, поэтому либо начинать с $i = 1, либо переопределить массив. В противном случае 1й строка будет пустой
Потом
Условие 2го цикла так же не выполняется, потому что 0 меньше чем $halfnum
Но независимо от условия строки списка могут будут пустыми, потому что ты выводишь с N элемента, где N = $i с предыдущего цикла for + $halfnum = 2
Странная конструкция у тебя... очень
Условие в 1м цикле вообще не выполняется, так как $i равняется нулю, и никогда при таких условиях не будет больше либо равна переменной $halfnum
Нужно изменить на <=
Далее у тебя в массиве 0й элемент содержит пустоту, поэтому либо начинать с $i = 1, либо переопределить массив. В противном случае 1й строка будет пустой
Потом
Условие 2го цикла так же не выполняется, потому что 0 меньше чем $halfnum
Но независимо от условия строки списка могут будут пустыми, потому что ты выводишь с N элемента, где N = $i с предыдущего цикла for + $halfnum = 2
Странная конструкция у тебя... очень
Спустя 36 минут, 40 секунд (2.03.2010 - 01:53) japanxt2 написал(а):
Цитата |
Кто кривой? Я или код? |
Я так думаю кривой тут ты, потому что написал такой код
Спустя 12 часов, 14 минут, 18 секунд (2.03.2010 - 14:07) KaizZzer написал(а):
точно, циклы же наоборот работают.
другой вопрос:
как сосчитать кол-во строк в таблице?
и вдогонку:
Где в коде ошибка? Получаю это : supplied argument is not a valid MySQL result resource.
Как же из нот валид, если все описано как в куче всяких мануалов и туториалов?
уж извините меня за возможно дурацкие вопросы, просто не работает, а я уже второй день не пойму где ошибка.
другой вопрос:
как сосчитать кол-во строк в таблице?
и вдогонку:
<?php
$connection = mysql_connect ("localhost", "msql", "123") or die ("Ошибка соединения с сервером");
$db=mysql_select_db ("msql", $connection) or die ("Ошибка при выборе базы данных") ;
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'"); //Rus lang
$result=mysql_query("SELECT * FROM 'table'",$connection);
$arrl=count($arr);
?>
Now we have: <br/>
<?php
echo "Overall: ",$arrl, "<br/>";
while ($currentrow=mysql_fetch_array($result))
{
echo $currentrow['name'];
}
?>
Где в коде ошибка? Получаю это : supplied argument is not a valid MySQL result resource.
Как же из нот валид, если все описано как в куче всяких мануалов и туториалов?
уж извините меня за возможно дурацкие вопросы, просто не работает, а я уже второй день не пойму где ошибка.
Спустя 36 минут, 40 секунд (2.03.2010 - 14:43) Soldier Ghost написал(а):
$result=mysql_query("SELECT * FROM `table`",$connection); кавычки поставил '' такие, а нужно было ``
Спустя 5 часов, 12 минут, 50 секунд (2.03.2010 - 19:56) KaizZzer написал(а):
не помогло
при таком варианте:
Выдает: supplied argument is not a valid MySQL result resource
при таком :
unexpected T_STRING[s]
при таком варианте:
$result=mysql_query(`SELECT * FROM table`,$connection);</span>
Выдает: supplied argument is not a valid MySQL result resource
при таком :
$result=mysql_query('SELECT * FROM 'table'',$connection);</span>
unexpected T_STRING[s]
Спустя 1 час, 29 минут, 32 секунды (2.03.2010 - 21:26) DedMorozzz написал(а):
чуток не так.
хмм....выше написали же такой вариант уже!! внимательнее читай
$result=mysql_query("SELECT * FROM `table`",$connection);попробуй вот так
хмм....выше написали же такой вариант уже!! внимательнее читай
Спустя 23 минуты, 26 секунд (2.03.2010 - 21:49) KaizZzer написал(а):
а, я не на те кавычки подумал. теперь половина работает.
ладно, совсем обнаглею и спрошу еще:
Должен добавлять в таблицу данные. Не добавляет
ладно, совсем обнаглею и спрошу еще:
<?php
$addname=$_REQUEST["name"] ;
$cat=$_REQUEST["category"];
$connection = mysql_connect ("localhost", "msql", "123") or die ("Ошибка соединения с сервером");
$db=mysql_select_db ("msql", $connection) or die ("Ошибка при выборе базы данных") ;
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
$query="SELECT * FROM `table`";
$result=mysql_query ($query);
$numrows=mysql_num_rows ($result);
$iter=$numrows + 1;
$query = "INSERT INTO `table`(`id`,`name`,`category`) VALUES (`$iter`, `$addname`, `$cat`)" ;
$result = mysql_query ($query,$connection);
mysql_close ($connection);
echo 'Added:',$addname,'<br/>';
echo 'id:',$iter;
?>
Должен добавлять в таблицу данные. Не добавляет
Спустя 1 час, 55 минут, 45 секунд (2.03.2010 - 23:45) DedMorozzz написал(а):
не должно. Название таблиц в таких кавычках `,а полей с даными в таких '. Поменяй кодировку везде на утф-8. Она универсальнее.
Итого инсерт выглядит так:
P.S. запарился подбирать цвет кавычек, что бы выделить. Думаю заметишь Так и не нашёл норм цвета
Итого инсерт выглядит так:
$query = "INSERT INTO `table`(`id`,`name`,`category`) VALUES ('$iter', '$addname', '$cat')" ;
P.S. запарился подбирать цвет кавычек, что бы выделить. Думаю заметишь Так и не нашёл норм цвета
Спустя 20 минут, 36 секунд (3.03.2010 - 00:06) DedMorozzz написал(а):
Кстати
Цитата |
echo 'Added:',$addname,'<br/>'; echo 'id:',$iter; |
не выведет, что ты хочешь, Если конечно ошибку не хотел этим получить (:
Надобно так:
Согласись, точки круче запятых выглядят ...
Надобно так:
echo 'Added:'.$addname.'<br/>';
echo 'id:'.$iter;
Согласись, точки круче запятых выглядят ...
Спустя 15 часов, 51 минута, 34 секунды (3.03.2010 - 15:57) KaizZzer написал(а):
эх, ну дедушка мороз, прям сразу взял и помог.не поленился, хоть и весна на дворе
тока чтото не робит всеравно
Ошибок нет, выводит
Added: Pear
Category: Fruits
ID: 2
но на другой странице, где циклом выводятся все строки таблицы(я про нее раньше спрашивал), есть только картошка. а груш нет.
Ладно, видимо денвер глюкавит.
Позволю себе еще два вопроса:
1) что относится к полям данных? это те поляны, которые в Mysql, в табличках?
2) при выведении переменных всегда окружать их точечками? или вообще все кусочки разделять точками?
з.ы. больше двух получилось, ну да ладно
тока чтото не робит всеравно
Ошибок нет, выводит
Added: Pear
Category: Fruits
ID: 2
но на другой странице, где циклом выводятся все строки таблицы(я про нее раньше спрашивал), есть только картошка. а груш нет.
Ладно, видимо денвер глюкавит.
Позволю себе еще два вопроса:
1) что относится к полям данных? это те поляны, которые в Mysql, в табличках?
2) при выведении переменных всегда окружать их точечками? или вообще все кусочки разделять точками?
з.ы. больше двух получилось, ну да ладно
Спустя 6 минут, 3 секунды (3.03.2010 - 16:03) DedMorozzz написал(а):
у тя в коде ошибок на самом деле over9000 =) Вчера даже перечислять не стал все =) А по синтаксису отличные маны пишут иль тя на гугле забанили?
З.Ы.: точки - это "склеивание" данных. Пример:
З.Ы.: точки - это "склеивание" данных. Пример:
<?php
$a='helo!';
echo 'guten tag '.$a.' guten morgen'; //guten tag helo guten morgen
?>
Спустя 13 минут, 51 секунда (3.03.2010 - 16:17) KaizZzer написал(а):
да, видимо всетаки я кривой. маны курю, даже книжку прикупил. хз, не помогает. ладно, спасибо за советы и помощь. *ушел гуглить*