Likes Likes:  0
Resultaten 1 tot 10 van de 10
Geen
  1. #1
    Error met bepaald commando met syncen database
    geregistreerd gebruiker
    136 Berichten
    Ingeschreven
    12/07/04

    Locatie
    Nederland

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee

    Thread Starter

    Error met bepaald commando met syncen database

    Wij maken gebruik van powerDNS icm met poweradmin.

    Via ons eigen registratie systeem kunnen wij simpel en snel nieuwe zones in de DNS aanmken door direct de database van powerdns te vullen.
    Helaas moet je na dit altijd de database syncen via de interface van powerdns

    Het scripje wat dit doet is heel simpel namelijk het volgende:

    Code:
    function seq_update(&$item)
    {
            global $dbi2;
    	$number_u =$dbi2->getOne("SELECT MAX(id) FROM $item");
    	if($number_u > 1)
    	{
    		$dbi2->nextID($item);
    		if($dbi2->getOne("SELECT id FROM " . $item . "_seq") < $number_u)
    		{
    			$number_u += 1;
    			$dbi2->query("UPDATE " . $item . "_seq SET id='$number_u'");
    		}
    
    	}
    }
    
    $tables = array('users', 'zones', 'records', 'domains');
    array_walk($tables, 'seq_update');

    Nu heb ik deze zode letterlijk overgenomen in ons eigen script en geef dus hetzelfde commando als poweradmin echter nu krijg ik ineens een error namelijk de volgende:

    Fatal error: Call to a member function getOne() on a non-object in e:\path\to\website\on\the\server\dnsentry.php on line 65
    (de error komt zowel lokaal bij mij voor (windows) als via de webserver (Plesk op redhat9))

    Line 65 is dus: $number_u =$dbi2->getOne("SELECT MAX(id) FROM $item");

    De functie getOne is volgens mij een pear functie en deze is geinstalleerd op de server, ook weet ik zeker dat het script connect naar de juiste database.
    De global functie $dbi2 is correct.

    Nu vraag ik me af hoe dit kan en wie er een ander "normaal" php/sql query kent die hetzelfde doet zodat dit wel gaat werken.

  2. #2
    Error met bepaald commando met syncen database
    The anonymous BOFH
    665 Berichten
    Ingeschreven
    28/06/04

    Locatie
    nvt

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nvt
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    http://be.php.net/mysql, de standaard mysql queries. mysql_query('select ... '); doet hetzeflde als hierboven beschreven

  3. #3
    Error met bepaald commando met syncen database
    geregistreerd gebruiker
    136 Berichten
    Ingeschreven
    12/07/04

    Locatie
    Nederland

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee

    Thread Starter
    Volgens mij is getone niet hetzelfde als select.

    Ik ben op de hoogte van de standaard mysql commando's echter niet die van pear, getone is mij zelf onbekend en ik weet dus niet wat die precies doet en welke "standaard" commando dat ik daarvoor in de plaats kan gebruiken

  4. #4
    Error met bepaald commando met syncen database
    The anonymous BOFH
    665 Berichten
    Ingeschreven
    28/06/04

    Locatie
    nvt

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nvt
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    ik gok dat getOne 1 value terug geeft, in het eerste voorbeeld dus een id. Dus een select doen, een $row = mysql_fetch_array($result) en $row['id'] zouden moeten werken

  5. #5
    Error met bepaald commando met syncen database
    Sebastiaan Stok
    2.468 Berichten
    Ingeschreven
    20/12/04

    Locatie
    Rotterdam

    Post Thanks / Like
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)
    86 Berichten zijn liked


    Naam: Sebastiaan Stok

    Je wild een functie aan roepen op een var die niet bestaat of geen object draagt.

    Word die $dbi2 wel ergens aan gemaakt ?
    Park The Hosting Manager - your friend in hosting software

  6. #6
    Error met bepaald commando met syncen database
    geregistreerd gebruiker
    136 Berichten
    Ingeschreven
    12/07/04

    Locatie
    Nederland

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee

    Thread Starter
    Ja $dbi wordt elders aangemaakt, dit wordt op meerdere plaatsen in het script ook gebruikt, zonder problemen.
    De fout zit hem puur in het commando getOne
    Dit is geen standaard commando en ik heb nog steeds geen goeie query kunnen vinden die hetzelfde doet.
    Dit is wat er in het script als opmerking staat wat dit commando moet doen:
    // What to do? Find the MAX(id) on each table and set it to the _seq table.

  7. #7
    Error met bepaald commando met syncen database
    geregistreerd gebruiker
    136 Berichten
    Ingeschreven
    12/07/04

    Locatie
    Nederland

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee

    Thread Starter
    Ik heb het script zelf aangepast, het geeft nu geen foutmeldingen meer alleen het effect is niet hetzelfde.

    Dit is mijn "vertaling" geworden:
    PHP Code:
    function seq_update(&$item)
    {
            global 
    $dbi2;
            
    $number_u sql_query("SELECT LAST_INSERT_ID() FROM $item"$dbi2);
        
    //$number_u =$dbi2->query("SELECT MAX(id) FROM $item");
        
    if($number_u 1)
        {
            
    //$dbi2->nextID($item);
            
    if(sql_query("SELECT id FROM " $item "_seq"$dbi2) < $number_u)
            {
                
    $number_u += 1;
                 
    sql_query("UPDATE " $item "_seq SET id='$number_u'"$dbi2);
            }

        }

    De regel //$dbi2->nextID($item); heb ik uitgezet omdat ik hiervoor geen query kan vinden en ik begrijp ook niet wat voor nut deze heeft.
    Hij haalt het ID op maar doet er verder niets meer mee zo te zien.

    Misschien dat iemand me een betere "vertaling" kan geven want ik krijg het niet werkend...

  8. #8
    Error met bepaald commando met syncen database
    Super-User
    177 Berichten
    Ingeschreven
    24/06/04

    Locatie
    Oegstgeest

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: 28101988
    Ondernemingsnummer: nvt

    Kan het niet zijn dat je een bepaalde file mist die door poweradmin normaal wordt geinclude.

  9. #9
    Error met bepaald commando met syncen database
    geregistreerd gebruiker
    136 Berichten
    Ingeschreven
    12/07/04

    Locatie
    Nederland

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee

    Thread Starter
    Nee, het is puur de pear addons die de server mist.
    De gebruikte commando's zijn zogenaamde pear commando's, de server moet deze package ondersteunen.
    Onze DNS server waarop powerdns draait heeft dat wel maar onze webservers niet, vandaar dat dit stukje code niet werkt.

  10. #10
    Error met bepaald commando met syncen database
    The anonymous BOFH
    665 Berichten
    Ingeschreven
    28/06/04

    Locatie
    nvt

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nvt
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    pear install <package> typen op die webserver



Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2021 Webhostingtalk.nl.
Web Statistics