PHP වැඩ්ඩන්ගෙන් ලොකු උදව්වක් ඕනි..

PoPkiss

Well-known member
  • Aug 17, 2016
    691
    543
    93
    PHP වැඩ්ඩන්ගෙන් ලොකු උදව්වක් ඕනි..

    මචන්ලා..මම වෙබ් එක හොස්ට් කලාම පෙලක් කන්ටෙන්ට් පෙන්නනේනේ නෑ...මේ කෝඩ් එක බලන්ඩකෝ..මේකේ prepared statement පාවිච්චි කරලනෙ තියෙන්නේ..


    PHP:
    							$stmt = $connection->prepare("SELECT * FROM comt WHERE status = 'Approved' limit 1 offset ?");
    							$stmt->bind_param('s', $id);
    							$stmt->execute(); 
    							$result = $stmt->get_result();											
    										
    							if($result->num_rows > 0) {
    								while($row = $result-> fetch_assoc()){							
    								
    								//$pst_title = $row['title'];
    								$pst_content = $row['content'];
    								$author = $row['commentator'];
    
    
    								if($i==0){
    									
    									echo '<div class="item active">';
    									echo '		<blockquote>';
    									echo '<div class="row">';
    									echo '<div class="col-sm-12">';
    									echo "		<p style='color:#a07936'>$pst_content</p>";
    									echo "<small>$author</small>";
    									echo '		</div>';
    									echo '		</div>';
    									echo '		</blockquote>';
    									echo '		</div>';
    									
    								}else{
    									
    									echo '<div class="item">';
    									echo '		<blockquote>';
    									echo '<div class="row">';
    									echo '<div class="col-sm-12">';
    									echo "		<p style='color:#a07936'>$pst_content</p>";
    									echo "<small>$author</small>";
    									echo '		</div>';
    									echo '		</div>';
    									echo '		</blockquote>';
    									echo '		</div>';									
    								}
    
    								
    
    							}
    							}

    මේ තියෙන්නේ prepared statement නැතුව ලිව්ව කෝඩ් එක..

    PHP:
    							$qry = "SELECT * FROM comt 
     WHERE status = 'Approved' limit 1 offset $i";
    							$select_cmnt = mysqli_query($connection,$qry);
    
    							while($row = mysqli_fetch_assoc($select_cmnt)){
    								
    								//$pst_title = $row['title'];
    								$pst_content = $row['content'];
    								$author = $row['commentator'];
    
    
    								if($i==0){
    									
    									echo '<div class="item active">';
    									echo '		<blockquote>';
    									echo '<div class="row">';
    									echo '<div class="col-sm-12">';
    									echo "		<p style='color:#a07936'>$pst_content</p>";
    									echo "<small>$author</small>";
    									echo '		</div>';
    									echo '		</div>';
    									echo '		</blockquote>';
    									echo '		</div>';
    									
    								}else{
    									
    									echo '<div class="item">';
    									echo '		<blockquote>';
    									echo '<div class="row">';
    									echo '<div class="col-sm-12">';
    									echo "		<p style='color:#a07936'>$pst_content</p>";
    									echo "<small>$author</small>";
    									echo '		</div>';
    									echo '		</div>';
    									echo '		</blockquote>';
    									echo '		</div>';									
    								}
    
    								
    
    							}

    මේකයි දැන් කේස් එක.මේ කෝඩ් 2ම wamp server use කරලා නෝර්මල් localhost එකේ රන් කලාම වැඩ සහ රිසල්ට්ස් පෙන්නනවා... :) ඒත් මචන්ලා මම මේක web host කරහම prepared statement use කරලා තියෙන එක වැඩ නෑ,කන්ටෙන්ට් පෙන්නනේනේ නෑ :( ..අනිත් එක (without prepared statements) වැඩ :) .ඇයි prepared statement use කරලා තියෙද්දි රිසල්ට්ස් පෙන්නනේ නැත්තේ..
     

    rajith123

    Well-known member
  • May 4, 2007
    1,625
    173
    63
    PHP:
    $stmt->bind_param('s', $id);

    මේකේ $id string එකක්ද integer එකක්ද?

    integer එකක් නම්

    PHP:
    $stmt->bind_param('i ', $id);

    දාල බලන්න
     

    PoPkiss

    Well-known member
  • Aug 17, 2016
    691
    543
    93
    PHP:
    $stmt->bind_param('s', $id);

    මේකේ $id string එකක්ද integer එකක්ද?

    integer එකක් නම්

    PHP:
    $stmt->bind_param('i ', $id);

    දාල බලන්න

    නෑනෙ බන් වැඩ කරන්නෙ එහෙම කලත් :(
     

    Bobby_Axlerod

    Member
    Jun 29, 2017
    181
    63
    0
    web eke duwana php/SQL version eka balapan. anika sql PDO walin gahapan. matath oyawage case ekak una
    anika errors E_ALL dapan errors balana
     

    Dimuth Max

    Member
    Sep 16, 2017
    29
    14
    0
    වෙබ් හොස්ට් කරපු එකේ පී.එච්.පී. වර්ශන් එක බලපන්
     

    PoPkiss

    Well-known member
  • Aug 17, 2016
    691
    543
    93
    web eke duwana php/SQL version eka balapan. anika sql PDO walin gahapan. matath oyawage case ekak una
    anika errors E_ALL dapan errors balana

    මචන් php වර්ශන් එක 5.6..මගෙ local රන් වෙන්නේ වර්ශන් 5.5 එකක්..ඒක අව්ලක් නෑනේ.. :confused:

    PDO දාලා මේක පොඩ්ඩක් ලියන විදිහ කියපන්කො මචන් :)
     

    PoPkiss

    Well-known member
  • Aug 17, 2016
    691
    543
    93
    වෙබ් හොස්ට් කරපු එකේ පී.එච්.පී. වර්ශන් එක බලපන්

    මචන් හොස්ට් කරපු එකේ 5.6 වර්ශන් එක..මගෙ local රන් වෙන්නේ 5.5 වර්ශන් එකක්..ඒක අව්ලක් නෑනේ.. :)

     

    masterit

    Active member
  • Feb 19, 2014
    566
    145
    43
    මචන් හොස්ට් කරපු එකේ 5.6 වර්ශන් එක..මගෙ local රන් වෙන්නේ 5.5 වර්ශන් එකක්..ඒක අව්ලක් නෑනේ.. :)


    php error script ekak host ekata daala balahan mulin error display wenawada kiyala.
     

    masterit

    Active member
  • Feb 19, 2014
    566
    145
    43
    නැත්තං ඉතිං උඹේ හොස්ට් db එකේ data නැතුව ඇති sure එකටම :P:P
     

    PoPkiss

    Well-known member
  • Aug 17, 2016
    691
    543
    93
    $connection kiyanne mokakda? :yes: mysqli or pdo? Pena widihata nam mysqli

    PHP:
    <?php
    
     $connection = mysqli_connect('localhost','gemma','cww12345','gemma');
     
     if($connection){
    	 //echo "Database connected";
     }
     
     else{
    	 echo "Database not connected";
     }
    
    ?>

    මෙහෙම තියෙන්නෙ මචන්..ඩීබී කනෙක්ශන් එකේ අවුලක් වෙන්ඩ බෑනේ..:confused: මොකද මේක ලෝකල් සර්වර් එකේ වැඩ,අනික prepared statement නැතුවත් වැඩනේ
     

    rajith123

    Well-known member
  • May 4, 2007
    1,625
    173
    63
    මචන් php වර්ශන් එක 5.6..මගෙ local රන් වෙන්නේ වර්ශන් 5.5 එකක්..ඒක අව්ලක් නෑනේ.. :confused:

    PDO දාලා මේක පොඩ්ඩක් ලියන විදිහ කියපන්කො මචන් :)

    TRY

    PHP:
    <?php
    $servername = "localhost";
    $username = "userName";
    $password = "passWord";
    $dbname = "myDB";
    
    try {
        $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
        // set the PDO error mode to exception
        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
        $stmt = $conn->prepare("SELECT * FROM comt WHERE status = 'Approved' limit 1");
        $stmt->execute();
    
        $result = $stmt->fetchAll();
    
    }
    catch(PDOException $e)
    {
        echo "Error: " . $e->getMessage();
    }
    $conn = null;

    more info http://php.net/manual/en/pdo.prepare.php
     
    Last edited:

    kolavari

    Well-known member
  • Aug 11, 2012
    33,746
    1
    25,659
    113
    කැළෑ පොජ්ජේ
    PHP:
    <?php
    
     $connection = mysqli_connect('localhost','gemma','cww12345','gemma');
     
     if($connection){
    	 //echo "Database connected";
     }
     
     else{
    	 echo "Database not connected";
     }
    
    ?>

    මෙහෙම තියෙන්නෙ මචන්..ඩීබී කනෙක්ශන් එකේ අවුලක් වෙන්ඩ බෑනේ..:confused: මොකද මේක ලෝකල් සර්වර් එකේ වැඩ,අනික prepared statement නැතුවත් වැඩනේ


      $stmt->bind_param('s', $id);

    Meke bind wenna one $id nemeine...$i ne? $id eke offset eken records nathuwa athi :yes: