Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    [php]Errore unexpected $

    ciao a tutti, potete aiutarmi? Ho inviato il sito fatto con Xoops online, l'ho installato e tutto è andato a buon fine...però quando vado nella index mi compare Parse error: parse error, unexpected $, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /membri/vale196/class/criteria.php on line 262 ...eccovi il codice completo:
    <?php
    class CriteriaElement
    {
    /**
    * Sort order
    * @var string
    */
    var $order = 'ASC';

    /**
    * @var string
    */
    var $sort = '';

    /**
    * Number of records to retrieve
    * @var int
    */
    var $limit = 0;

    /**
    * Offset of first record
    * @var int
    */
    var $start = 0;

    /**
    * @var string
    */
    var $groupby = '';

    /**
    * Constructor
    **/
    function CriteriaElement()
    {

    }

    /**
    * Render the criteria element
    */
    function render()
    {

    }

    /**#@+
    * Accessor
    */
    /**
    * @param string $sort
    */
    function setSort($sort)
    {
    $this->sort = $sort;
    }

    /**
    * @return string
    */
    function getSort()
    {
    return $this->sort;
    }

    /**
    * @param string $order
    */
    function setOrder($order)
    {
    if ('DESC' == strtoupper($order)) {
    $this->order = 'DESC';
    }
    }

    /**
    * @return string
    */
    function getOrder()
    {
    return $this->order;
    }

    /**
    * @param int $limit
    */
    function setLimit($limit=0)
    {
    $this->limit = intval($limit);
    }

    /**
    * @return int
    */
    function getLimit()
    {
    return $this->limit;
    }

    /**
    * @param int $start
    */
    function setStart($start=0)
    {
    $this->start = intval($start);
    }

    /**
    * @return int
    */
    function getStart()
    {
    return $this->start;
    }

    /**
    * @param string $group
    */
    function setGroupby($group){
    $this->groupby = $group;
    }

    /**
    * @return string
    */
    function getGroupby(){
    return ' GROUP BY '.$this->groupby;
    }
    /**#@-*/
    }

    /**
    * Collection of multiple {@link CriteriaElement}s
    *
    * @package kernel
    * @subpackage database
    *
    * @author Kazumi Ono <onokazu@xoops.org>
    * @copyright copyright (c) 2000-2003 XOOPS.org
    */
    class CriteriaCompo extends CriteriaElement
    {

    /**
    * The elements of the collection
    * @var array Array of {@link CriteriaElement} objects
    */
    var $criteriaElements = array();

    /**
    * Conditions
    * @var array
    */
    var $conditions = array();

    /**
    * Constructor
    *
    * @param object $ele
    * @param string $condition
    **/
    function CriteriaCompo($ele=null, $condition='AND')
    {
    if (isset($ele) && is_object($ele)) {
    $this->add($ele, $condition);
    }
    }

    /**
    * Add an element
    *
    * @param object &$criteriaElement
    * @param string $condition
    *
    * @return object reference to this collection
    **/
    function &add(&$criteriaElement, $condition='AND')
    {
    $this->criteriaElements[] =& $criteriaElement;
    $this->conditions[] = $condition;
    return $this;
    }

    /** QUESTA E' LA LINEA 262 * Make the criteria into a query string
    *
    * @return string
    */
    function render()
    {
    $ret = '';
    $count = count($this->criteriaElements);
    if ($count > 0) {
    $ret = '('. $this->criteriaElements[0]->render();
    for ($i = 1; $i < $count; $i++) {
    $ret .= ' '.$this->conditions[$i].' '.$this->criteriaElements[$i]->render();
    }
    $ret .= ')';
    }
    return $ret;
    }

    /**
    * Make the criteria into a SQL "WHERE" clause
    *
    * @return string
    */
    function renderWhere()
    {
    $ret = $this->render();
    $ret = ($ret != '') ? 'WHERE ' . $ret : $ret;
    return $ret;
    }

    /**
    * Generate an LDAP filter from criteria
    *
    * @return string
    * @author Nathan Dial ndial@trillion21.com
    */
    function renderLdap(){
    $retval = '';
    $count = count($this->criteriaElements);
    if ($count > 0) {
    $retval = $this->criteriaElements[0]->renderLdap();
    for ($i = 1; $i < $count; $i++) {
    $cond = $this->conditions[$i];
    if(strtoupper($cond) == 'AND'){
    $op = '&';
    } elseif (strtoupper($cond)=='OR'){
    $op = '|';
    }
    $retval = "($op$retval" . $this->criteriaElements[$i]->renderLdap().")";
    }
    }
    return $retval;
    }
    }


    /**
    * A single criteria
    *
    * @package kernel
    * @subpackage database
    *
    * @author Kazumi Ono <onokazu@xoops.org>
    * @copyright copyright (c) 2000-2003 XOOPS.org
    */
    class Criteria extends CriteriaElement
    {

    /**
    * @var string
    */
    var $prefix;
    var $function;
    var $column;
    var $operator;
    var $value;

    /**
    * Constructor
    *
    * @param string $column
    * @param string $value
    * @param string $operator
    **/
    function Criteria($column, $value='', $operator='=', $prefix = '', $function = '') {
    $this->prefix = $prefix;
    $this->function = $function;
    $this->column = $column;
    $this->value = $value;
    $this->operator = $operator;
    }

    /**
    * Make a sql condition string
    *
    * @return string
    **/
    function render() {
    if ( is_numeric($this->value) || strtoupper($this->operator) == 'IN') {
    $value = $this->value;
    } else {
    if ( '' === ($value = trim($this->value)) ) {
    return '';
    }
    if ( (substr($value, 0, 1) != '`') && (substr($value, -1) != '`') ) {
    $value = "'$value'";
    }
    }
    $clause = (!empty($this->prefix) ? "{$this->prefix}." : "") . $this->column;
    if ( !empty($this->function) ) {
    $clause = sprintf($this->function, $clause);
    }
    $clause .= " {$this->operator} $value";
    return $clause;
    }

    /**
    * Generate an LDAP filter from criteria
    *
    * @return string
    * @author Nathan Dial ndial@trillion21.com
    */
    function renderLdap(){
    $clause = "(" . $this->column . $this->operator . $this->value . ")";
    return $clause;
    }

    /**
    * Make a SQL "WHERE" clause
    *
    * @return string
    */
    function renderWhere() {
    $cond = $this->render();
    return empty($cond) ? '' : "WHERE $cond";
    }
    }
    ?>
    ciao e grazie
    Tante risorse gratuite e ribriche divertenti e interessanti!
    http://www.tuttoilweb.org
    Iscriviti al forum!!

  2. #2
    a me questo codice non da nessun parse error ..

  3. #3
    cmq io non ho mai visto una funzione inziare con &..

  4. #4
    ma allora quale può essere il problema?
    Tante risorse gratuite e ribriche divertenti e interessanti!
    http://www.tuttoilweb.org
    Iscriviti al forum!!

  5. #5

    Re: [php]Errore unexpected $

    Originariamente inviato da vale196

    function &add(&$criteriaElement, $condition='AND')
    {
    $this->criteriaElements[] =& $criteriaElement;
    $this->conditions[] = $condition;
    return $this;
    }


    function add(&$criteriaElement, $condition='AND')

    prova a fare cosi.. però non è questo il prob

  6. #6
    adesso misteriosamente l'errore non compare più...in compenso la pagina è bianca!!!
    Tante risorse gratuite e ribriche divertenti e interessanti!
    http://www.tuttoilweb.org
    Iscriviti al forum!!

  7. #7
    Originariamente inviato da vale196
    adesso misteriosamente l'errore non compare più...in compenso la pagina è bianca!!!


    misteriosamnete? era quello che ti ho detto l'errore...


    cmq all'inzio metti error_reporting(E_ALL);

  8. #8
    no no, non ho modificato niente...infatti prima di fare come hai detto tu ho controllato ed ecco che tutto era bianco....
    Tante risorse gratuite e ribriche divertenti e interessanti!
    http://www.tuttoilweb.org
    Iscriviti al forum!!

  9. #9
    per piacere...rispondete !
    Tante risorse gratuite e ribriche divertenti e interessanti!
    http://www.tuttoilweb.org
    Iscriviti al forum!!

  10. #10
    codice:
    function &add(&$criteriaElement, $condition='AND')
    {
    $this->criteriaElements[] =& $criteriaElement;
    $this->conditions[] = $condition;
    return $this;
    }
    in questa funzione (linea 255 ca.)
    prova a scrivere:
    $this->criteriaElements[] =&$criteriaElement;

    Ciao,
    Paplo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.