2017-06-09 3 views
-2

PHP/MySQL Galerie FragenSeiten und Galerie Probleme

Ich habe eine Galerie in PHP gemacht. Er empfängt von einer Indexseite einen Parameter "inname". Die Galerie jedes Mal, wenn es von der Seite übergeht, schafft es nicht, 2 Parameter zur gleichen Zeit und in allen inombre zu senden. Unparameter der Datenbank "idtext" Bitte sagen Sie mir die Fehler

enter code here 

index.php

Lista de Acontecimientos<Br /> 
<?php 
$conexion = mysqli_connect("localhost", "root", "") or trigger_error(mysql_error(),E_USER_ERROR); 
mysqli_select_db($conexion,"db674013292"); 
$consulta="Select * from textos where clase=1 "; 
$result=mysqli_query($conexion,$consulta); 
?> 
<?php 
while($fila=mysqli_fetch_row($result)){ 
    echo "<a href=\"H.php?inombre='".$fila['0']."'\">".$fila['1']."</a><br>"; } 
?> 

gallery.php

$inombre=$_GET['inombre']; 

    $objConnect = mysql_connect("localhost","root","") or die(mysql_error()); 
    $objDB = mysql_select_db("db674013292"); 

    $strSQL = "SELECT * FROM galeriadecidiendo where idtexto =$inombre "; 

    $objQuery = mysql_query($strSQL); 
     $Num_Rows = mysql_num_rows($objQuery); 

     $Per_Page = 8; // Per Page 

     @$Page = $_GET["Page"]; 
     if([email protected]$_GET["Page"]) 
     { 
      $Page=1; 
     } 

     $Prev_Page = $Page-1; 
     $Next_Page = $Page+1; 

     $Page_Start = (($Per_Page*$Page)-$Per_Page); 
     if($Num_Rows<=$Per_Page) 
     { 
      $Num_Pages =1; 
     } 
     else if(($Num_Rows % $Per_Page)==0) 
     { 
      $Num_Pages =($Num_Rows/$Per_Page) ; 
     } 

     else 
     { 
      $Num_Pages =($Num_Rows/$Per_Page)+1; 
      $Num_Pages = (int)$Num_Pages; 
     } 

     $strSQL .=" order by idgaleriatexto ASC LIMIT $Page_Start , $Per_Page"; 
     $objQuery = mysql_query($strSQL); 


     echo"<table border=\"0\" align=\"center\" cellspacing=\"0\" cellpadding=\"0\"><tr>"; 
     $intRows = 0; 
     while($objResult = mysql_fetch_array($objQuery)) 
     { 
      echo "<td>"; 
      $intRows++; 
    ?> 
<img with="150" height="150" src="<?=$objResult["url"]; ?>"><br>     
    <?PHP 
      echo"</td>"; 
      if(($intRows)%4==0) 
      { 
       echo"</tr>"; 
      } 
     } 
     echo"</tr></table>"; 
    ?> 
     <br> 
    <span class="paguinas">Total <?= $Num_Rows;?> Record : <?=$Num_Pages;?> Page :</span> 


       <?PHP 
     if($Prev_Page) 
     { 
      echo " <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page&$inombre=idtexto'><< Back</a> "; 
     } 

     for($i=1; $i<=$Num_Pages; $i++){ 
      if($i != $Page) 
      { 
       echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page&$inombre=idtexto'>$i</a> ]"; 
      } 
      else 
      { 
       echo "<b> $i </b>"; 
      } 
     } 
     if($Page!=$Num_Pages) 
     { 
      echo " <a href ='$_SERVER[SCRIPT_NAME]?Page=$Next_Page$Prev_Page&$inombre=idtexto'>Next>></a> "; 
     }`enter code here` 
     ?> 


    <?PHP 
mysql_close($objConnect); 
?> 




</body> 
</html> 
+0

Ihr Code jedes Mal die Seite Schritt bitte, wie ich senden, um die Parameter inname falsch senden ist anfällig für [** SQL-Injection * *] (https://en.wikipedia.org/wiki/SQL_injection) Angriffe. Sie sollten [** mysqli **] (https://secure.php.net/manual/en/mysqli.prepare.php) oder [** PDO **] (https://secure.php.net/) verwenden. manual/de/pdo.prepared-statements.php) vorbereitete Anweisungen mit gebundenen Parametern wie in [** dieser Beitrag **] beschrieben (https://stackoverflow.com/questions/60174/how-cani-i-prevent-sql -injektion-in-php). –

+0

Verwenden Sie nicht die 'mysql_ *' Funktionen. Sie sind seit v5.5 (Juni 2013) veraltet und wurden seit v7.0 (Dez 2015) entfernt. Verwenden Sie stattdessen die [** mysqli _ ***] (https://secure.php.net/manual/de/book.mysqli.php) oder [** PDO **] (https://secure.php.net) /manual/en/book.pdo.php) funktioniert mit [** vorbereiteten Aussagen **] (https://secure.php.net/manual/en/pdo.prepare.php) und [** gebundenen Parametern ** ] (https://secure.php.net/manual/en/pdostatement.bindparam.php). –

Antwort

0

Danke für den Kommentar.

Ich habe bereits den Code geändert, aber das Problem mysqli weiterhin besteht, da ich es

<html><head></head><body> 
<?php 

$inombre=$_GET['inombre']; 
$objConnect = mysqli_connect("localhost","root","") or die(mysql_error()); 
$objDB = mysqli_select_db($objConnect,"db674013292");  
$strSQL = "SELECT * FROM galeriadecidiendo where idtexto =$inombre "; 
$objQuery = mysqli_query($objConnect,$strSQL); 
$Num_Rows = mysqli_num_rows($objQuery); 

$Per_Page = 8; 
?> 
     @$Page = $_GET["Page"]; 
     if([email protected]$_GET["Page"]) 
     { 
      $Page=1; 
     } 

     $Prev_Page = $Page-1; 
     $Next_Page = $Page+1; 

$Page_Start = (($Per_Page*$Page)-$Per_Page); 
if($Num_Rows<=$Per_Page) 
     {$Num_Pages =1;} 
     else if(($Num_Rows % $Per_Page)==0) 
     { 
      $Num_Pages =($Num_Rows/$Per_Page) ; 
     } 
     else 
     { 
      $Num_Pages =($Num_Rows/$Per_Page)+1; 
      $Num_Pages = (int)$Num_Pages; 
     } 


     $strSQL .=" order by idgaleriatexto ASC LIMIT $Page_Start , $Per_Page"; 
     $objQuery = mysqli_query($objConnect,$strSQL); 


     echo"<table border=\"0\" align=\"center\" cellspacing=\"0\" cellpadding=\"0\"><tr>"; 
     $intRows = 0; 
     while($objResult = mysqli_fetch_array($objQuery)) 
     { 
      echo "<td>"; 
      $intRows++; 

    <img with="150" height="150" src="<?=$objResult["url"]; ?>"><br>     

       echo"</td>"; 
       if(($intRows)%4==0) 
       { 
        echo"</tr>"; 
       } 
      } 
      echo"</tr></table>"; 


     <span class="paguinas">Total <?= $Num_Rows;?> Record : <?=$Num_Pages;?> Page :</span> 



      if($Prev_Page) 
      { 
       echo " <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page&$inombre=idtexto'><< Back</a> "; 
      } 

      for($i=1; $i<=$Num_Pages; $i++){ 
       if($i != $Page) 
       { 
        echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page&$inombre=idtexto'>$i</a> ]"; 
       } 
       else 
       { 
        echo "<b> $i </b>"; 
       } 
      } 
      if($Page!=$Num_Pages) 
      { 
    echo " <a href ='$_SERVER[SCRIPT_NAME] Page=$Next_Page$Prev_Page&$inombre=idtexto'>Next>></a> "; 
      } 
    mysqli_close($objConnect);