BG Development


  Reply to this topicStart new topicStart Poll

> Малко помощ отново за база данни?
rootkit82
Публикувано на: 30-01-2021, 14:25
Quote Post



Име: Драго
Група: Потребител
Ранг: Новопостъпил

Мнения: 6
Регистриран на: 28.01.21



Здравейте отново от мен.
В момента имам следния проблем ..... които може да е лесен за някой ..... но ме затруднява мен. И мисля, че ме затруднява понеже греша подредбата на кода. Но нека да обясня.
Имам пак две бази с имена galleryCat: gal_id, gallery, uidUsers и другата е: imageCat: img_id, gal_id, file_name, uidUsers. Да кажа пак за двете бази .... в galleryCat се записват ИД на галерията и името на добавената галерия от потребителя. В imageCat съответно ид на снимката, ид на галерията в която се поства снимката, пътя на снимката и накрая е номера на регистрирания потребител.
Идеята ми сега е ..........след като юзър иска да избере дадена галерия .... да може да се селектне само галерията която е избрал и да се извади резултата от тази галерия в друга страница.
В момента с този код както съм го написал всичко работи ..... но ми излизат общите галерии т.е всички галерии на дадения юзър а идеята е да излязат резултатите само от избраната галерия. След четене .... пробвах, суках ..... излизат някои неща но не както аз искам. И за това реших отново да се допитам и евентуално да ми се обясни къде правя грешка?

Тук избирам галерия която искам да дисплейна.
CODE
<div class="card">
   
       
           <form action='galleryckTest1.php' method=post enctype='multipart/form-data' >
               
               <input type=hidden name=todo value='upload'>

               <table class="uploadPic" width='790' cellspacing='0' cellpadding='0'>
               <tr>
                 
                   <td> Избери Галерия </td>
                   <td class="selectGal">
                   
                   <select class="custom-select" style="width:200px;" name='gal_id'>
                       <option value=''>Галерия</option>
                   
                       <?Php  
                       require "includes/config.php"; // Database Connection

                       $nt="select * from galleryCat where uidUsers =  ".$_SESSION['userId']."";

                       foreach ($dbo->query($nt) as $rt) {
                       echo "<option value='$rt[gal_id]' >$rt[gallery]</option>";
                       }
                      ;
                       ?>
                       </select>
                   </td>
               </tr>
               </table>

               <br>

               <table class="uploadPic" width='790' cellspacing='0' cellpadding='0'>
               <tr>
                   
                   <td class="selectGal">
                       
                   <input type=submit id="upload"  value='Покажи резултата'>
                       
                   </td>
               </tr>
               </table>
           </form>
     
           
</div>


А тук е скрипта за изпълнение които извежда общите галерии на даден юзър. А идеята е да изведе само зададената галерия от юзъра.

CODE
<?php
   $hostname="localhost";
   $username="root";
   $password="P217idG3";
   $db = "site";
   $dbh = new PDO("mysql:host=$hostname;dbname=$db", $username, $password);
   foreach($dbh->query("SELECT imageCat.img_id,imageCat.gal_id,imageCat.file_name, gallery
   FROM imageCat
   INNER JOIN galleryCat ON galleryCat.gal_id = imageCat.gal_id where galleryCat.uidUsers =  ".$_SESSION['userId']." and galleryCat.gal_id = galleryCat.gal_id") as $row) {
       
       
       
   echo "
   
   
   <div class=\"card\">
           
       
           <table style=\"width: 100%;\">
           <thead style=\"border: 1px solid black;\">
           <tr style=\"background: #00BFFF; font-weight: bold; font-size: 13px;\">
           <th>Снимка</th>
           <th>Име на Галерия</th>
           <th>Изтрии</th>
           </tr>
           </thead>
           <tbody>
           <tr style=\"background: #D0E4F5; font-size: 12px;\">
           <td><div><img style=\"border-radius: 5px; margin-left: 2px; margin-right: 2px;\" src='upload_thumb/".$row['file_name']."' width='80' height='80'></div></td>
           <td><div style=\"font-size: 10px;\">Галерия<br> " . $row["gallery"]. "</div></td>
           <td><div style=\"font-size: 8px;\"><a class=\"myButtonDelete\" href='delete_image.php?deleteid=" . $row["img_id"]. "'>Изтрии</a></div></td>
           </tr>
           </tbody>
           </table>
     
           
</div>";    

   }
   ?>


Някой може ли да ми обясни къде и какво не правя като хората за да получа желания резултат?
Благодаря предварително.

PMEmail Poster
Top
ivanov03
Публикувано на: 31-01-2021, 01:22
Quote Post



Име:
Група: Потребител
Ранг: Посетител

Мнения: 81
Регистриран на: 14.12.12



Здравей!

С PHP не съм се занимавал от няколко години, но прочетох и другата ти тема и понеже виждам, че сега се учиш - ще ти дам първо някои общи насоки.

Преди да стигнеш до PHP е добре да имаш базови познания за следното:

1. HTML и CSS
2. Бази от данни и езика SQL

Конкретно за твоя въпрос:
Почети първо повечко за езика SQL и как точно се правят заявките към базите от данни.
Ето ти връзка към лесно и достъпно обяснен материал по въпроса:
Въведениe в SQL

А ето и една връзка точно по това, което се опитваш да правиш:
Въведение в уеб програмирането с PHP


И още нещо важно: по-лесно се научават нещата от книги (или от добре структуриран като книга: сайт - учебник), защото там всеки основен въпрос се разглежда обстойно.
Така че търси, чети, опитвай, работи и, ако проявиш търпение, упоритост и постоянство - ще успееш!

Това е от мен.
PM
Top
nullsoft
Публикувано на: 10-02-2021, 03:19
Quote Post



Име:
Група: Потребител
Ранг: Посетител

Мнения: 104
Регистриран на: 23.06.05



CODE
<?php
  $gal_id=htmlspecialchars($_POST["gal_id"]) // тука взимаш gal_id които е избрал потребителя и правиш заявфка  кадето galleryCat.gal_id е същото което е избрал потребителя gal_id
  $hostname="localhost";
  $username="root";
  $password="P217idG3";
  $db = "site";
  $dbh = new PDO("mysql:host=$hostname;dbname=$db", $username, $password);
  foreach($dbh->query("SELECT imageCat.img_id,imageCat.gal_id,imageCat.file_name, gallery
  FROM imageCat
  INNER JOIN galleryCat ON galleryCat.gal_id = imageCat.gal_id where galleryCat.uidUsers =  ".$_SESSION['userId']." and galleryCat.gal_id = ".$gal_id."") as $row) {
     
     
     
  echo "
 
 
  <div class=\"card\">
         
     
          <table style=\"width: 100%;\">
          <thead style=\"border: 1px solid black;\">
          <tr style=\"background: #00BFFF; font-weight: bold; font-size: 13px;\">
          <th>Снимка</th>
          <th>Име на Галерия</th>
          <th>Изтрии</th>
          </tr>
          </thead>
          <tbody>
          <tr style=\"background: #D0E4F5; font-size: 12px;\">
          <td><div><img style=\"border-radius: 5px; margin-left: 2px; margin-right: 2px;\" src='upload_thumb/".$row['file_name']."' width='80' height='80'></div></td>
          <td><div style=\"font-size: 10px;\">Галерия<br> " . $row["gallery"]. "</div></td>
          <td><div style=\"font-size: 8px;\"><a class=\"myButtonDelete\" href='delete_image.php?deleteid=" . $row["img_id"]. "'>Изтрии</a></div></td>
          </tr>
          </tbody>
          </table>
   
         
</div>";    

  }
  ?>



и аз не разбирам много, но мисля че така трябва да проработи
PMEmail Poster
Top
0 потребители преглеждат тази тема в момента (0 гости, 0 анонимни потребители)
Потребители, преглеждащи темата в момента:

Topic Options Reply to this topicStart new topicStart Poll

 


Copyright © 2003-2019 | BG Development | All Rights Reserved
RSS 2.0