PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (8): « 1 2 3 4 5 [6] 7 8 »

> Найдено сообщений: 107
imediasun2 Отправлено: 27 Января, 2013 - 23:09:39 • Тема: метод GET • Форум: Вопросы новичков

Ответов: 3
Просмотров: 150
Здравствуйте всем, я в файле обработчике имею $_GET['maker'], как мне его автоматически передать без использования ссылок в основной файл?
imediasun2 Отправлено: 27 Января, 2013 - 13:14:12 • Тема: динамический <select> марка авто - модель • Форум: Вопросы новичков

Ответов: 0
Просмотров: 605
Почему возникает ошибка 500 Internal Server Error
Прокоментируйте пожалуйста как можно подробнее этот код, как переделать эти селекты чтобы появлялся еще инпут в котором будут по умолчанию зависимые данные от модели, спасибо большое за участие в вопросе
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. require_once($_SERVER['DOCUMENT_ROOT'].'/action/config.php');
  4. if(isset($_GET['marka'])){
  5.    $marka=$_SESSION['marka']=intval($_GET['marka']);
  6.    $res = sql('SELECT * FROM '.db_prefix.'model WHERE marka='.$marka.' ORDER by name');
  7.    /* todo if(mysql_num_rows($res)>1) */ echo '<option value=0 selected>Выберите модель</option>';
  8.     while($row = mysql_fetch_array($res))
  9.         echo "<option value='" . $row['id'] . "'>" . $row['name'] . "</option>\n";
  10.    exit;    
  11. }elseif(isset($_GET['model'])){
  12.     $id_model=intval(param('model'));
  13.     $res = sql('SELECT * FROM '.db_prefix.'model WHERE id='.$id_model.' LIMIT 1');
  14.     if(!($row = mysql_fetch_array($res)))die;
  15.     $model=$row['name'];
  16.     $id_marka=intval($row['marka']);
  17.     $res = sql('SELECT * FROM '.db_prefix.'marka WHERE id='.$id_marka.' LIMIT 1');
  18.     if(!($row = mysql_fetch_array($res)))die;
  19.     $marka=$row['name'];
  20.     $product=intval($row['product']);
  21. }
  22.  
  23.  
  24. $script=@$_SERVER['SCRIPT_URL']; if(!$script)$script=@$_SERVER['REQUEST_URI'];
  25.  
  26. $_SESSION['marka']=$_SESSION['model']=0;
  27. $_SESSION['product']=1;
  28. ?>
  29.  


CODE (html):
скопировать код в буфер обмена
  1.  
  2. <table border="0" cellspacing="0" cellpadding="5" align="center">
  3. <td colspan="3" class="blank">
  4. <tr>
  5. <td id="markat">Марка ТС
  6. <td><select style="WIDTH: 200px; height:21" name="marka" id="marka" onLoad='this.focus = false;'
  7. onChange="getObj('model').disabled=''; ajaxLoad('model', '<?=$script?>?marka='+this.options[this.selectedIndex].value, '','','');">
  8.     <option value=0 selected>Выберите марку</option>
  9.  


PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. $res = sql('SELECT * FROM '.db_prefix.'marka WHERE product=1 ORDER by name');
  4. while($row = mysql_fetch_array($res))
  5.    echo "<option value='" . $row['id'] . "'>" . $row['name'] . "</option>\n";
  6. ?>
  7.  

CODE (html):
скопировать код в буфер обмена
  1.  
  2. </select>
  3. <tr>
  4. <td colspan="3" class="blank">
  5. <tr>
  6. <td id="modelt">Модель ТС
  7. <td><select style="WIDTH: 200px; height:21" name="model" id="model" <?=(@$marka?'':'disabled="disabled"') ?>  
  8. onChange="ajaxLoad('info', '<?=$script?>?model='+this.options[this.selectedIndex].value, '','','');" >
  9.     <option value selected disabled="disabled">Выберите модель</option>
  10. </select>
  11. </table>
  12.  
  13. <div id="info"></div>
  14.  

CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. <script language=JavaScript><!--
  3. function getObj(objID)
  4. {
  5.     if (document.getElementById) {return document.getElementById(objID);}
  6.     else if (document.all) {return document.all[objID];}
  7.     else if (document.layers) {return document.layers[objID];}
  8. }
  9.  
  10. function ajaxLoad(obj,url,defMessage,post,callback){
  11.   var ajaxObj;
  12.   if (defMessage) document.getElementById(obj).innerHTML=defMessage;
  13.   if(window.XMLHttpRequest){
  14.       ajaxObj = new XMLHttpRequest();
  15.   } else if(window.ActiveXObject){
  16.       ajaxObj = new ActiveXObject("Microsoft.XMLHTTP");  
  17.   } else {
  18.       return;
  19.   }
  20.   ajaxObj.open ((post?'POST':'GET'), url);
  21.   if (post&&ajaxObj.setRequestHeader)
  22.       ajaxObj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=windows-1251;");
  23.  
  24.   ajaxObj.onreadystatechange = ajaxCallBack(obj,ajaxObj,(callback?callback:null));
  25.   ajaxObj.send(post);
  26.   return false;
  27.   }
  28. function updateObj(obj, data, bold, blink){
  29.    if(bold)data=data.bold();
  30.    if(blink)data=data.blink();
  31.    document.getElementById(obj).innerHTML = data; // упрощенный вариант, работает не во всех браузерах
  32.   }
  33. function ajaxCallBack(obj, ajaxObj, callback){
  34. return function(){
  35.     if(ajaxObj.readyState == 4){
  36.        if(callback) if(!callback(obj,ajaxObj))return;
  37.        if (ajaxObj.status==200)
  38.         updateObj(obj, ajaxObj.responseText);
  39.        else updateObj(obj, ajaxObj.status+' '+ajaxObj.statusText,1,1);
  40.     }
  41. }}
  42.  
  43. //--></script>
  44.  

config.php
PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. <?PHP
  4. // указываем параметры для подключения к MySQL
  5. $host='v315803.freehost.com.ua'; // имя хоста
  6. $database='proflifter'; // имя базы данных
  7. $user='proflifter'; // заданное вами имя пользователя
  8. $pswd='proflifter'; // заданный вами пароль
  9. // подключаемся к MySQL
  10. $dbh = mysql_connect($host, $user, $pswd) or die("Не могу соединиться с MySQL.");
  11. mysql_select_db($database) or die("Не могу подключиться к базе.");
  12.  
  13. define("db_prefix","pb_");
  14.  
  15. function sql($query) {
  16.     $res=mysql_query ( $query );
  17.     if(!$res)die("Запрос:\n".$query."\n");
  18.     return $res;
  19. }
  20. ?>
  21.  
imediasun2 Отправлено: 26 Января, 2013 - 14:13:59 • Тема: при подключении файла не выводит сообщение об ошибке • Форум: Вопросы новичков

Ответов: 1
Просмотров: 285
Есть файл который содержит в себе форму отправки сообщения и action функцию mail, если этот файл запускать сам по себе все работает, а если он подключен к другому файлу через include, то не выводятся сообщения об ошибке и не работает header

PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3.  
  4. include ('../blocks/bd.php');
  5. if (isset($_GET['id_product'])){
  6. $id_product=$_GET['id_product'];
  7. $sql_products="SELECT * FROM products WHERE id_product=$id_product";
  8. $query_products=mysql_query($sql_products)or die (mysql_error());
  9. while($row_products=mysql_fetch_assoc($query_products)){
  10. ?>
  11. <?function show_form()
  12. {
  13. ?>
  14. <form action="" method="post">
  15. <input class="input2" name="name" type="text" size="20">
  16. <input type="hidden" name="title" value="<?echo $row_products['name_product'];?>"
  17. <input class="input2" type="submit" name="submit" value="Отправить данные"/>
  18. </form>
  19.  
  20.  
  21. <?
  22. }
  23. }
  24.  
  25. }
  26. else echo "no id_product";
  27. function complete_mail() {
  28. // $_POST['title'] содержит данные из поля "Тема", trim() - убираем все лишние пробелы и переносы строк, htmlspecialchars() - преобразует специальные символы в HTML сущности, будем считать для того, чтобы простейшие попытки взломать наш сайт обломались, ну и  substr($_POST['title'], 0, 1000) - урезаем текст до 1000 символов. Для переменных $_POST['mess'], $_POST['name'], $_POST['tel'], $_POST['email'] все аналогично
  29. $title =  substr(htmlspecialchars(trim($_POST['title'])), 0, 1000);
  30. $name =  substr(htmlspecialchars(trim($_POST['name'])), 0, 30);
  31. $mess =  substr(htmlspecialchars(trim($_POST['mess'])), 0, 1000000);
  32. $phone =  substr(htmlspecialchars(trim($_POST['phone'])), 0, 30);
  33. $email =  substr(htmlspecialchars(trim($_POST['email'])), 0, 50);
  34. // если не заполнено поле "Имя" - показываем ошибку 0
  35. if (empty($name)){
  36. output_err(0);
  37. }
  38. // если неправильно заполнено поле email - показываем ошибку 1
  39. if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $email)){
  40. output_err(1);
  41. }
  42. // если не заполнено поле "Сообщение" - показываем ошибку 2
  43. if(empty($mess)){
  44. output_err(2);
  45. }
  46. // создаем наше сообщение
  47. $message = "Товар:$title<br/>Имя отправителя:$name<br />Контактный телефон:$phone<br />Контактный email:$email<br /><p>$mess</p><br />" ;
  48. // $to - кому отправляем
  49. $to = 'webmaster@imedia.in.ua';
  50. // $from - от кого
  51. $from='webmaster@imedia.in.ua';
  52. $headers = "MIME-Version: 1.0\r\n";
  53. $headers .= "Content-Transfer-Encoding: 8bit\r\n";
  54. $headers .= "Content-Type: text/html; charset=\"UTF-8\"\r\n";
  55. $headers .= "From: =?utf-8?B?" . base64_encode("Web Master") . "?= '".$to."'\r\n";
  56. $subject = "Потенциальный заказчик";
  57. if(mail($to, "=?utf-8?B?" . base64_encode($subject) . "?=", $message, $headers)){
  58. echo "Спасибо! Ваше письмо отправлено.<br />";
  59. return true;
  60. }else{
  61. echo "Общая ошибка отправки сообщения<br />Попробуйте ещё раз";
  62. return false;
  63. }
  64.        
  65. }
  66.  
  67. function output_err($num)
  68. {
  69.     $err[0] = 'ОШИБКА! Не введено имя.';
  70.     $err[1] = 'ОШИБКА! Неверно введен e-mail.';
  71.     $err[2] = 'ОШИБКА! Не введено сообщение.';
  72.     echo '<p>'.$err[$num].'</p>';
  73.     show_form();
  74.     exit();
  75. }
  76.  
  77. if (isset($_POST['submit'])) {
  78.         if(!complete_mail()){
  79.                 show_form();
  80.         }
  81.         else
  82.         header('Location:../index.php');
  83. }else{
  84. show_form();
  85. }
  86. ?>
  87.  
imediasun2 Отправлено: 26 Января, 2013 - 11:37:43 • Тема: mysql взаимозависимые <select> • Форум: Вопросы новичков

Ответов: 2
Просмотров: 166
народ, ответьте на вопрос пожалуйста
imediasun2 Отправлено: 25 Января, 2013 - 19:37:41 • Тема: высота блока такая как и другого блока • Форум: Вопросы новичков

Ответов: 6
Просмотров: 180
а в чем соль собственно, я вообще не понимаю как оно работает нет никаких привязок
добавил пустой блок в контент и стиль по нему
CODE (html):
скопировать код в буфер обмена
  1.  
  2.         .clear {
  3.         clear: left;
  4. }
  5.  
Не работает, я так понял js там нужен только для увеличения сайдбара
imediasun2 Отправлено: 25 Января, 2013 - 18:32:04 • Тема: высота блока такая как и другого блока • Форум: Вопросы новичков

Ответов: 6
Просмотров: 180
высота сайдбара - авто, а высота контента должна быть всегда такая же как и сайд бара, там фон в контенте и он должен быть по высоте с постоянно раскрывающимся и увеличивающимся сайд баром
imediasun2 Отправлено: 25 Января, 2013 - 12:50:20 • Тема: mysql взаимозависимые <select> • Форум: Вопросы новичков

Ответов: 2
Просмотров: 166
Помогите пожалуйста, при выборе категории должны появляться соответствующие продукты, помогите найти ошибку
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <select size="1" name="category" onchange="javascript:selectProducts();" style="float:left;">
  3.  

PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. require "../blocks/bd.php";
  4. $sql_cat="SELECT * FROM categories";
  5. $query_cat=mysql_query($sql_cat)or die (mysql_error());
  6. while($row_cat=mysql_fetch_assoc($query_cat)){
  7. ?>
  8. <option value="<?=$row_cat['id_cat'];?>"><?=$row_cat['name_cat'];?></option>
  9. <?
  10. }
  11. ?>
  12.  

CODE (html):
скопировать код в буфер обмена
  1.  
  2. </select>
  3. <div name="selectDataProducts" style="float:left;"></div>
  4.  

CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. <script>
  3. function selectProducts(){
  4.         var id_country = $('select[name="category"]').val();
  5.         if(!id_country){
  6.                 $('div[name="selectDataProducts"]').html('');
  7.                 }else{
  8.                 $.ajax({
  9.                         type: "POST",
  10.                         url: "../action/ajax.base.php",
  11.                         data: { action: 'showProductsForInsert', id_cat: id_cat },
  12.                         cache: false,
  13.                         success: function(responce){ $('div[name="selectDataProducts"]').html(responce); }
  14.                 });
  15.         };
  16. };
  17.  
  18. </script>
  19.  

ajax.base.php
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3.  
  4. ini_set(default_charset,"UTF-8");
  5.  
  6. # include data base
  7. require "../blocks/bd.php";
  8.  
  9. switch ($_POST['action']){
  10.                
  11.         case "showProductsForInsert":
  12.                 echo '<select size="1" name="products" >';
  13.                 $rows = $DB->select('SELECT * FROM products WHERE id_cat=? ORDER BY id_product ASC', $_POST['id_cat']);
  14.                 foreach ($rows as $numRow => $row) {
  15.                         echo '<option value="'.$row['id_product'].'">'.$row['name_product'].'</option>';
  16.                 };
  17.                 echo '</select>';
  18.                 break;
  19.                
  20.                
  21. };
  22.  
  23. ?>
  24.  
imediasun2 Отправлено: 24 Января, 2013 - 12:44:36 • Тема: sql INSERT виснет страница • Форум: Вопросы новичков

Ответов: 7
Просмотров: 246
выше расположен блок сайдбара в котором тоже mysql запрос, если его убираю то страница уже не висит, но так и не появляется надпись данные успешно загружены хотя если убрать весь html, то надпись появляется, что это может быть, вот код сайдбара

PHP:
скопировать код в буфер обмена
  1.  
  2. <div id="left_side" style="margin-left:50%;left-500px;float:left;top:<?echo $empty2;?>">
  3. <?
  4.  
  5.  $sql_cat="SELECT * FROM categories";
  6. $query_cat=mysql_query($sql_cat)or die (mysql_error());
  7. while($row_cat=mysql_fetch_assoc($query_cat)){
  8. $sql_product="SELECT * FROM products WHERE id_cat=".$row_cat['id_cat'];
  9. $product=mysql_query($sql_product)or die (mysql_error());
  10. ?>
  11.  
  12. <div class="box1" style="">
  13. <h2><?=$row_cat['name_cat'];?><span class="expand">+</span></h2>
  14. <ul>
  15. <?
  16. while($prod_name=mysql_fetch_assoc($product)){
  17. ?>
  18. <li><a href="admin_products.php?id_product=<?=$prod_name['id_product'];?>"><?=$prod_name['name_product'];?></a></li>
  19. <?
  20. }
  21. ?>
  22. </ul>
  23. </div>
  24. <?
  25. }
  26. ?>
  27. </div><!--left_side-->
  28.  
  29.  
imediasun2 Отправлено: 24 Января, 2013 - 12:24:31 • Тема: sql INSERT виснет страница • Форум: Вопросы новичков

Ответов: 7
Просмотров: 246
ничего не выводит
imediasun2 Отправлено: 24 Января, 2013 - 12:03:13 • Тема: sql INSERT виснет страница • Форум: Вопросы новичков

Ответов: 7
Просмотров: 246
Здравствуйте виснет страница в загрузке, и не выводит сообщение о том что данные успешно загружены но данные в базу записываются, что может быть не так, спасибо
PHP:
скопировать код в буфер обмена
  1.  
  2. if (isset ($_POST['submit1'])){
  3. $name_cat=$_POST['name_cat'];
  4. $allowed_filetypes = array('.jpg','.gif','.bmp','.png'); // Здесь мы перечисляем допустимые типы файлов
  5. $max_filesize = 5242888; // Максимальный размер загружаемого файла в байтах (в данном случае он равен 0.5 Мб).
  6. $upload_path = '../images/'; // Место, куда будут загружаться файлы (в данном случае это папка 'files').
  7. $filename = $_FILES['userfile']['name']; // В переменную $filename заносим точное имя файла (включая расширение).
  8. $file_with_path = $upload_path.$filename;
  9. $ext = substr($filename, strpos($filename,'.'), strlen($filename)-1); // В переменную $ext заносим расширение загруженного файла.
  10.  
  11. // Сверяем полученное расширение со списком допутимых расширений, которые мы определили в самом начале. Если расширение загруженного файла не входит в список разрешенных, то прерываем выполнение программы и выдаем соответствующее сообщение.
  12.  
  13. if(!in_array($ext,$allowed_filetypes))
  14. die('Данный тип файла не поддерживается.');
  15.  
  16. // Теперь проверим размер загруженного файла и если он больше максимально допустимого, то прерываем выполнение программы и выдаем сообщение.
  17.  
  18. if(filesize($_FILES['userfile']['tmp_name']) > $max_filesize)
  19. die('Фаил слишком большой.');
  20.  
  21. // Проверяем, доступна ли на запись папка, определенная нами под загрузку файлов (папка files). Если вдруг недоступна, то выдаем сообщение, что на папку нужно поставить права доступа 777.
  22.  
  23. if(!is_writable($upload_path))
  24. die('Невозможно загрузить фаил в папку. Установите права доступа - 777.');
  25.  
  26. // Загружаем фаил в указанную папку.
  27. if(move_uploaded_file($_FILES['userfile']['tmp_name'],$upload_path . $filename))
  28. {
  29. echo 'Ваш фаил успешно загружен <a href="' . $upload_path . $filename .'">смотреть</a>';
  30. $sql_cat="INSERT INTO categories (name_cat, photo_cat) VALUES ('$name_cat','$file_with_path')";
  31. $query_cat=mysql_query($sql_cat)or die (mysql_error());
  32. if ($query_cat)
  33. echo "Данные внесены успешно";
  34.  
  35. }
  36. else
  37. {
  38. echo 'При загрузке возникли ошибки. Попробуйте ещё раз.';
  39. }
  40. }
  41.  
  42.  
  43. ?>
  44.  
imediasun2 Отправлено: 21 Января, 2013 - 10:03:46 • Тема: динамическое создание mysql полей • Форум: Вопросы новичков

Ответов: 6
Просмотров: 394
Нашел вот такой скрипт, поможет ли он мне и как на стороне клиента все устроить?
PHP:
скопировать код в буфер обмена
  1.  
  2. <?$cols = array();
  3. $count = 1;
  4. $numcols = $_POST['cols'];
  5. while ($numcols > 0) {
  6. $cols[] = mysql_real_escape_string($_POST[$count."_name"])."
  7. ".mysql_real_escape_string($_POST[$count."_type"]);
  8. $count ++;
  9.  $numcols --;
  10.  }
  11.  $allcols = null;
  12.  $newcounter = $_POST['cols'];
  13.  foreach ($cols as $col) { if ($newcounter > 1) $allcols = $allcols.$col.",\n";
  14.  else $allcols = $allcols.$col."\n"; $newcounter --; };
  15.  $fullname = $_SESSION['user_id']."_".mysql_real_escape_string($_POST['name']);
  16.  $dbname = mysql_real_escape_string($_POST['name']);
  17.  $query = "CREATE TABLE ".$fullname." (\n".$allcols." )";
  18.  mysql_query($query);
  19.  echo create_table($query, $fullname, $dbname, $actualcols);
  20.  ?>

Как бы вы его отредактировали?
imediasun2 Отправлено: 20 Января, 2013 - 23:03:59 • Тема: динамическое создание mysql полей • Форум: Вопросы новичков

Ответов: 6
Просмотров: 394
а если надо, то что делать
PHP:
скопировать код в буфер обмена
  1.  
  2. public function buildDB(){
  3.   $sql = 'CREATE TABLE IF NOT EXISTS messages (
  4.            title     VARCHAR(150),
  5.            bodytext  TEXT,
  6.            created       VARCHAR(100)
  7.          )';
  8.            
  9.   return mysql_query($sql);  
  10. }
  11.  

Как вместо названий вставлять переменные и как формировать их колличество и типы данных, возможно ли это вообще , поделитесь пожалуйста знаниями и статьями, спасибо
imediasun2 Отправлено: 20 Января, 2013 - 22:51:13 • Тема: динамическое создание mysql полей • Форум: Вопросы новичков

Ответов: 6
Просмотров: 394
Требуется чтобы клиент создавал таблицу относящуюся к товару (например модель сойства)и в каждом конкретном случае количество полей в таблице будет различное, как это осуществить чтобы существовала добавить таблицу (количество полей) с клиентской стороны, добавлялось бы таблица в базу данных и выводилась бы информация при наличии у товара такой таблицы, помогите рассудить и спроектировать, тут наверное какие то SQL команды должны быть в зависимости от выбранных клиентом условий.
imediasun2 Отправлено: 19 Января, 2013 - 23:16:22 • Тема: нужна помощь, помогите пожалуйста • Форум: Вопросы новичков

Ответов: 0
Просмотров: 42
Посмотрите пожалуйста ссылку

[url]
http://proflifter[dot]com[dot]ua/admin/a[dot][dot][dot]hp#&panel1-2
[/url]
Как сделать так чтобы при нажатии на кнопку слайдера изменялась информация в инпутак соответственно той которая в базе , как в слайдере выводится
imediasun2 Отправлено: 19 Января, 2013 - 23:13:30 • Тема: вывод данных из базы • Форум: Вопросы новичков

Ответов: 2
Просмотров: 78
спасибо

Страниц (8): « 1 2 3 4 5 [6] 7 8 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB