Problema punct in nume Topic is solved

Secţiune dedicată începatorilor.

Moderatori: Moderatori, Start Moderator

Mister
Junior Member
Mesaje: 39
Membru din: Joi Feb 11, 2016 7:41 pm

Problema punct in nume

Mesajde Mister » Lun Sep 24, 2018 7:39 pm

Salut, am o problema la o instructiune mysql

Cod: Selectaţi tot

$q = Config::$g_con->prepare("SELECT * FROM `users`  WHERE `username` = '  ".Config::$_url[1]."' ");
$q->execute();

$data =  $q->fetch(PDO::FETCH_OBJ);
if($q->rowCount()==0)   echo 'cont inexistent';
else echo 'cont existent';



Config::$_url[1] este linkul din pagina exemplu localhost/profile/nume
unde nume este Config::$_url[1]

daca numele este de exemplu Test si am contul test in baza de date totul este ok dar, daca numele din baza de date este Test. si accesez localhost/profile/Test. atunci imi spune ca nu exista contul
Deci problema este la acel . daca la finalul numelui este punct nu imi detecteaza contul.


Nu prea inteleg de ce este aceasta problema astept un raspuns multumesc.

EDIT: problema este la Config::$_url[1] daca are valoare nume. nu se detecteaza . si il ia simplu



Avatar utilizator
Jetix
Junior Member
Mesaje: 35
Membru din: Mie Aug 09, 2017 3:16 am
Contact:

Re: Problema punct in nume

Mesajde Jetix » Mar Sep 25, 2018 7:43 am

Cod: Selectaţi tot

$var = Config::$_url[1];

$q = Config::$g_con->prepare("SELECT * FROM `users`  WHERE `username`  = ? ");
$q = bindParam(1, $var);
$q->execute();

if($q->rowCount() == 0) {
    echo 'cont inexistent';
} else {
    echo 'cont existent';
    $data =  $q->fetchAll(PDO::FETCH_ASSOCJ);
}

Vezi daca merge astfel.

Mister
Junior Member
Mesaje: 39
Membru din: Joi Feb 11, 2016 7:41 pm

Re: Problema punct in nume

Mesajde Mister » Mar Sep 25, 2018 3:10 pm

nu imi gaseste functia bindparam,
Fatal error: Uncaught Error: Call to undefined function bindParam()

daca folosesc $q -> bindParam(1, $var); nu mai da eroare dar zice la fel cont inexistent

Avatar utilizator
Jetix
Junior Member
Mesaje: 35
Membru din: Mie Aug 09, 2017 3:16 am
Contact:

Re: Problema punct in nume  Topic is solved

Mesajde Jetix » Mar Sep 25, 2018 4:04 pm

Da, am facut o grseala cand am scris acel parametru, pana la urma scriam de pe telefon :)), am testat la mine in PC un cod, incearca-l pe acesta si spune-mi daca merge.

Cod: Selectaţi tot

<?php
class Connection {
   public function dbConnect() {
      return new PDO("mysql:host=localhost; dbname=pp", "root", "");
   }
}
//$var = Config::$_url[1];
$var = $_GET['s'];

$q = Connection::dbConnect()->prepare("SELECT * FROM `admins` WHERE `auth` = ?");
$q->bindParam(1, $var);
$q->execute();

if($q->rowCount() > 0) {
    echo 'cont existent';
    $data = $q->fetchAll(PDO::FETCH_ASSOC);
} else {
    echo 'cont inexistent';
}

?>

Eu am folosit o baza deja existenta, tu foloseste baza ta de date.

Mister
Junior Member
Mesaje: 39
Membru din: Joi Feb 11, 2016 7:41 pm

Re: Problema punct in nume

Mesajde Mister » Mar Sep 25, 2018 7:50 pm

Jetix scrie:Da, am facut o grseala cand am scris acel parametru, pana la urma scriam de pe telefon :)), am testat la mine in PC un cod, incearca-l pe acesta si spune-mi daca merge.

Cod: Selectaţi tot

<?php
class Connection {
   public function dbConnect() {
      return new PDO("mysql:host=localhost; dbname=pp", "root", "");
   }
}
//$var = Config::$_url[1];
$var = $_GET['s'];

$q = Connection::dbConnect()->prepare("SELECT * FROM `admins` WHERE `auth` = ?");
$q->bindParam(1, $var);
$q->execute();

if($q->rowCount() > 0) {
    echo 'cont existent';
    $data = $q->fetchAll(PDO::FETCH_ASSOC);
} else {
    echo 'cont inexistent';
}

?>

Eu am folosit o baza deja existenta, tu foloseste baza ta de date.


Am inteles nu i problema, eu am pus asa in fisierul meu si am facut si o verificare sa imi arate acest page url si vad ca daca pun . la final nu imi detecteaza punctul mi l sterge si nu intleg de ce, daca il uploadez pe un web host merge dar pe localhost unde lucrez nu imi merge

Cod: Selectaţi tot

$q = Config::$g_con->prepare("SELECT * FROM `users`  WHERE `username`  = ? ");
$q->bindParam(1, Config::$_url[1]);
$q->execute(); 
if(!$q->rowCount())
{
   echo '<div align="center" class="alert alert-warning">Invalid Profile name '.Config::$_url[1].'</div>';
 
   return ;

Avatar utilizator
Jetix
Junior Member
Mesaje: 35
Membru din: Mie Aug 09, 2017 3:16 am
Contact:

Re: Problema punct in nume

Mesajde Jetix » Mie Sep 26, 2018 8:33 am

Hmm, nu stiu ce sa spun, nu stiu foarte multe despre scrptul tau. Posteaza aici ce face acea functie "Config::$_url[1]" poate este o problema de la dânsa.

Mister
Junior Member
Mesaje: 39
Membru din: Joi Feb 11, 2016 7:41 pm

Re: Problema punct in nume

Mesajde Mister » Mie Sep 26, 2018 12:30 pm

Nu sunt foarte sigur ca e tot ce trebuie dar cred ca asta este functia, plus ce mai interactioneaza cu ea. Este un AdminLTE ceva de genul proiectul la care lucrez

Cod: Selectaţi tot

   public static $_url = array();
   private static function _getUrl() {
      $url = isset($_GET['page']) ? $_GET['page'] : null;
        $url = rtrim($url, '/');
        $url = filter_var($url, FILTER_SANITIZE_URL);
        self::$_url = explode('/', $url);
   }
   // de aici nu cred ca mai are treaba
   
   public static function getContent() {
      if(self::$_url[0] === 'api' && file_exists('inc/pages/'.self::$_url[1].'.a.php')) return include 'inc/pages/'.self::$_url[1].'.a.php';
      if(self::$_url[0] === 'action') { include ACTIONS_PATH . self::$_url[1] . '.a.php'; return; }
      include_once 'inc/header.inc.php';

      if(in_array(self::$_url[0],self::$_pages))
      {
         include 'inc/pages/' . self::$_url[0] . '.p.php';
      }
      else if(self::$_url[0] == '')
      {
         include 'inc/pages/index.p.php';
      }
      else include_once 'inc/pages/404.p.php';

      include_once 'inc/footer.inc.php';   
   }
   
   public static function _getPage() {
      return self::$_url[0];
   }

   public static function getPage() {
      return isset(self::$_url[2]) ? self::$_url[2] : 1;
   }
   

Avatar utilizator
Jetix
Junior Member
Mesaje: 35
Membru din: Mie Aug 09, 2017 3:16 am
Contact:

Re: Problema punct in nume

Mesajde Jetix » Joi Sep 27, 2018 8:49 am

Verifica $_url cu var_dump() si vezi daca este NULL.

Avatar utilizator
quadmachine
Senior Member
Mesaje: 802
Membru din: Sâm Iul 10, 2010 4:58 pm
Localitate: Ploiesti
Contact:

Re: Problema punct in nume

Mesajde quadmachine » Vin Noi 09, 2018 10:28 am

Sau folosesti functia trim si nu ii mai lasi cu punct, virgula s.a.m.d., oricum eu zic sa lasi continutul la htacces aici sa vedem ce ai.

Cod: Selectaţi tot

Nu confundati femeia de serviciu cu profesoara de Limba si Literatura Romana.


Înapoi la “PHP Incepători”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Majestic-12 [Bot] și 27 vizitatori