altRobots
/robotigs/icons/actuator.pngActuatoren
/robotigs/icons/printboards.pngAlgemeen
/robotigs/icons/chassis.pngChassis
/robotigs/icons/florigs.pngFlorigs
/robotigs/icons/interfacing.gifInterfacing
/robotigs/icons/microphone_icon.pngMuziek
/robotigs/icons/musicKey_icon.pngMuzikanten
/robotigs/icons/shield.pngSchildjes
/sys/icons/sensors.pngSensors
/robotigs/icons/languages.pngTalen
/robotigs/icons/battery.pngVoedingen
/sys/icons/microController.pngµControllers
altContact
Email"); echo ("  "); } ?>  "); /* echo (""); echo (" "); //Show pencil as button */ ?> alt  

Deze pagina is verouderd. Ga naar de vernieuwde pagina.

"); $counter = 0; $aantal = str_word_count($pict_list, 0, "0123456789"); $lijst = str_word_count($pict_list, 1, "0123456789"); while($counter < $aantal){ $pictkey = $lijst[$counter]; $qryy1 = ("SELECT * FROM illustrations WHERE ill_id = $pictkey ;"); $resulty1 = pg_query($con1, $qryy1); while($row = pg_fetch_array($resulty1)){ //Fields accesible by their name foreach( $row AS $key => $val ){ $$key = stripslashes( $val ); } } $image = ("/robotigs/documentatie/plaatjes/$ill_name"); $pictfull = str_replace('_small', '', $image); //Pictfull=biggest version $alt = ("Just wait till your 57...."); $txtname = get_txt($con1, 18, $koekje[2], $ill_id); //Robot illustrations subtitles echo (""); echo (''. $alt .'
'); $nummer = $counter + 1; $txtAfb = get_txt($con1, 9, $koekje[2], 3865); //Pic Afb if ($koekje[0]>0 and $koekje[3]>0){ //User is logged in and translates echo ("$txtAfb $nummer: "); echo ("$txtname"); echo ("
"); echo ("Ontkoppelen "); if ($counter==0){ echo ("Up "); }else{ echo ("Up "); } if ($nummer == $aantal){ echo ("Down"); }else{ echo ("Down"); } }else{ //Else of if Meaning the current useer is logged in echo ("$txtAfb $nummer: $txtname"); } echo ('

'); //End of this picture $counter++; //Prepair for next picture } echo (''); //All pictures are printed } //End of if there are 1 or more pictures to be printed ---------------------- ?>

  • Email

    Email is één van de moeilijkste processen op het internet. De verrichtingen van sendmail kunnen worden bekeken met
    gedit /var/log/maillog of met tail -f /var/log/maillog.

    Dit hebben we op dit moment: echo "echo "Test Email message body" | mail -s "Email test subject" rboek2@gmail.com. Het antwoord is Command mail not found, but can be installed with: sudo apt install mailutils. Doen dus. Dit start een installatie progamma met enkele opties. Internetserver met smarthost. nu werkt:
    sudo tail -f -n 50 /var/log/syslog | grep postfix. Kortom Postfix wordt geinstalleerd (configuratie). Bekijk ook postconf -n. sudo systemctl restart postfix.

    Om Gmail als SMTP server te gebruiken: sudo gedit /etc/postfix/main.cf. Aldaar toevoegen:

    relayhost = [smtp.gmail.com]:587
    smtp_sasl_auth_enable = yes
    smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
    smtp_sasl_security_options = noanonymous
    smtp_tls_CAfile = /etc/postfix/cacert.pem
    smtp_use_tls = yes

    sudo gedit /etc/postfix/sasl_passwd
    [smtp.gmail.com]:587 username@gmail.com:password
    sudo postmap /etc/postfix/sasl_passwd
    There should now be a file called sasl_passwd.db in the /etc/postfix/ directory.

    Er moet ook een veiligheids certificaat worden geinstalleerd:
    cat /etc/ssl/certs/thawte_Primary_Root_CA.pem | sudo tee -a /etc/postfix/cacert.pem

    Sending email

    Wij willen met PHP een email kunnen versturen van een ingelogde user naar rboel2@gmail.com. Dit is nodug voor SQL-ledger en Traffic. De server moet voor beiden zelfstandig mail kunnen versturen vanuit PHP.

    ??Hiermee wordt de veiligheid worden vergroot bij het automatisch aanmaken van users, door een password in het bevestigingsmailtje op te nemen waarmee een user zijn account kan activeren.

    In het configuratiebestand /etc/mail/sendmail.mc moeten de onderstaande wijzigingen worden aangebracht: Dit bestand wordt na iedere update overschreven. Documenteer dus duidelijk wat er aan het origineel gewijzigd is:
    * define(`SMART_HOST`,`smtp.euronet.nl` dnl
    en voorafgaande DNL verwijderd. In Zoetermeer gewijzigd in smtp.cablewanadoo.nl.
    * DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp, Addr=127.0.0.1,`) is reeds vrijgegeven.
    MASQUERADE_AS(`igsboekamp.nl`)dnl en de dnl moet worden verwijderd. In Zoetermeer gewijzigd in wanadoo.nl.
    *MASQUERADE_DOMAIN(localhost)dnl aangezet door dnl aan het begin te verwijderen.
    *MASQUERADE_DOMAIN(localhost.localdomain)dnl aangezet door dnl aan het begin te verwijderen.

    Vervolgens als root in een terminal in de directory /etc/mail een nieuw configuratiebestand aangemaakt met: make -C /etc/mail. Verder is het verstandig om in /etc/mail/trusted-users apache en alle normale systeemgebruikers met hun aanmeldnaam op te nemen omdat er anders een irritante waarschuwing in de verzonden email header ontstaat. Na een reboot werkt het wel, maar het kan pas worden getest als ook H4.5.1 PHP is geinstalleerd.

    1. Zakelijke e-mail: info@uwvervoerder.nl

      Als client gebruik ik Thunderbird mail. Onze zakelijke email wordt ontvangen door onze mail DNSprovider: Starthosting. Aldaar kunnen wij instellen of wij met IMAP of met POP3 onze ingekomen mail uitlezen. Ondanks dat IMAP beter lijkt voor onze toepassing, werken wij met POP3 omdat het gemakkelijker is. Let er wel op dat bij iedere client het verwijderen op server wordt uitgezet. POP3 server is server5.starthosting.nl

      Outbound mail is directly send to our Internet-provider. The simplest way to sent mail is through the SMTP server of your provider, in my case: smtp.telfort.nl. No login or keys required.

    2. Root email

      De root krijgt systeem meldingen per mail van de automatische backup. Volgens /var/log/syslog zou hij dat per Sendmail (wiki) willen doen. Sendmail wordt echter niet standaard meegeinstalleerd met Ubuntu. Het kan simpel worden geinstalleerd via het Ubuntu software centrum. Sendmail wordt dan met een default configuratie geinstalleerd. De verrichtingen van sendmail kunnen worden bekeken in /var/log/mail.log. Mails verwijderen kan uit /var/spool/mail/. De gebruikers moeten wel blijven bestaan.

      Wijzigingen in de configuratie moeten worden aangebracht in /etc/mail/sendmail.conf. Deze worden pas doorgevoerd indien u een sudo sendmailconfig heeft uitgevoerd. Er wordt een door de backup procedure iedere dag een kopie neergelegd van /etc/mail/sendmail.conf in /var/www/html/login/backup.

      DAEMON_MAILSTATS="Yes"; (Was “No”) Maar verder zie ik geen define(`SMART_HOST`) meer in dit bestand. Dat is omdat anno 2016 ook nog steeds niet hier ligt.

      Brutaal heb ik /etc/hosts en /etc/hostname gewijzigd in uwvervoerder.nl. Volgende stap is eerst een sudo sendmailconfig en dan een reboot uit te voeren. Dat kan pas nadat alle bestanden zijn gekopieerd. Maar dan moet eerst de backup script worden gerund en gecontroleerd.

      Gevonden op het internet

      #Make a auth subdirectory
      mkdir auth
      chmod 700 auth

      #Create a file with your auth information to the smtp server
      cd auth touch client-info #In the file,   put following, matching up to your smtp server:
      AuthInfo:your.isp.net "U:root">"I:user" P:password" #Generate the Authentication database, make both files readable only by root
      makemap hash client-info < client-info
      chmod 600
      client-info
      cd..

      #Add the following lines to sendmail.mc.
      Make sure you update your smtp server

      define(`SMART_HOST`,`your.isp.net`)dnl define(`confAUTH_MECHANISMS`, `EXTERNAL GSSAPI DIGEST-MD5
      CRAM-MD5 LOGIN PLAIN`)dnl
      FEATURE(`authinfo`,`hash
      /etc/mail/auth/client-info`)dnl
      #Invoke creation sendmail.cf
      m4 sendmail.mc > sendmail.cf

      #Restart the service sendmail restart

      Buiten dat is er ook nog Just try mailq and then sendmail -q -v dit

      Om te testen:n:
      echo "My test email being sent from sendmail" | /usr/sbin/sendmail root@localhost

      Heel verstandig dus om dit bestand te backuppen. EN DAN NU MAAR WACHTEN TOT DE VOLGENDE BACKUP IS GEDAAN:

      Check /var/www/html/login/backup

      Chech Apache log error

      De queue kan bekeken worden met sudo -i mailq.

      Het volgende mailtje wordt dan aangemaakt:

      From richard@www Sat Feb 27 10:30:54 2016
      Return-Path:
      Received: from www (localhost [127.0.0.1] by www(8.14.4/8.14.4/Debian-4.1ubuntu1) with ESMTP id u1R9UsUm024288 for
      ;Sat, 27 Feb 2016 10:30:54 +0100
      Received: (from richard@localhost)
      by www (8.14.4/8.14.4/Submit) id u1R9Us5N024254
      for richard@localhost; Sat, 27 Feb 2016 10:30:54 +0100
      Date: Sat, 27 Feb 2016 10:30:54 +0100
      From: Richard Boekamp
      Message-Id: <201602270930.u1R9Us5N024254@www>
      My test email being sent from sendmail

      Dit gaat dus niet goedkomen.

  • User client

    mail versturen. Om deze functie te kunnen vervullen moeten er bij sendmail diverse configuratiebestanden worden aangepast.

    */etc/mail/sendmail.mc

    DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA`) uitgezet met dnl #
    Deze regel zorgt ervoor dat er enkel naar de locale poort wordt geluisterd. Deze regel moet dus worden verwijderd om mail van andere hosts te kunnen ontvangen. FOUT DAT WIL JE NIET!!! Vervolgens als root in een terminal in de directory /etc/mail een nieuw configuratiebestand aangemaakt met: make -C /etc/mail.

    1.12.3 Receiving email

    A more general way of receiving mail is that you let sendmail handle all of the email transports. Het idee achter mail ontvangen is dat onze server periodiek onze starthosting mailbox (info@uwvervoerder.nl) afvraagt en vervolgens intern archieveert. In onze configuratie zal het programma sendmail onder andere de inkomende mail verwerken. Om deze functie te kunnen vervullen moeten er voor sendmail diverse configuratiebestanden worden aangepast. Deze Quick howto en deze features-site bieden een uitleg van de configuratie mogelijkheden. De verrichtingen van sendmail kunnen worden bekeken in /var/log/maillog of met tail -f /var/log/maillog.

    sendmail /etc/mail/procmail.mc Procmail zorgt dat de data uit /var/spool/mqueue in de user accounts wordt gedropt.
    /etc/mail/sendmail.mc Nadat de sendmail.cf file is aangepast als root in een terminal in de directory /etc/mail een nieuw configuratiebestand aangemaakt met: make -C /etc/mail.
    /etc/mail/local-host-names Sendmail moet begrijpen voor welke domains het verantwoordelijk is en waarvoor het de mail moet verwerken. Zo`n domain wordt een alias genoemd. Hierin moeten alle domeinen waarvoor de mail verwerkt moet worden gelijst. Inhoud:
    1. 10.0.0.163
    2. igsboekamp.nl
    /etc/mail/access localhost.localdomain RELAY
    localhost RELAY
    127.0.0.1 RELAY
    igsboekamp.nl RELAY
    Om de boel dicht te timmeren tegen spam-relaying wordt deze file gebruikt. Deze geeft aan wie er mail mogen relayen via onze server. Standaard staat deze ingesteld op uitsluitend localhost, maar wij willen dat uitbreiden met de gebruikers van het eigen localdomain. Na het toevoegen moet dit naar een bruikbare database worden geconverteerd, door als root in een terminal naar /etc/mail te gaan en daar een make uit te voeren.
    /etc/mail/virtusertable Op dit moment staat hier alles naar user marjan gericht, maar dit lijkt geen effect te hebben.
    rboek2@wanadoo.nl richard toevoegen
    @wanadoo.nl katinka toevoegen
    Omdat gebruikersnamen en mailnamen vaak verschillend zijn moet er een conversieslag gemaakt worden. Deze wordt gemaakt in de virtusertable. Bovendien kan hier worden aangegeven wat er met mail met onbekende namen moet gebeuren. Feitelijk is dit een eenvoudige set met regels om sendmail te vertellen wat te doen met de binnengekomen mail. Bovenstaande set gebruikt in Zoetermeer. Dit zorgt ervoor dat enkel mail voor rboek ook daadwerkelijk naar de gebruiker richard gaat en dat de rest van de mail bij gebruiker katinka terechtkomt.
    @euronet.nl richard
    @igsboekamp.nl richard
    Alle email gaat naar de gebruiker richard. Als de regels zijn ingevuld moet dit naar een bruikbare database worden geconverteerd, door als root in een terminal naar /etc/mail te gaan en daar een make uit te voeren.
    /etc/aliases Zet de gewenste accounts op marjan en de rest op root. Als dit bestand is gewijzigd dan moet het geactiveerd worden met: newaliases als root in een terminal in /etc.
    Fetchmail /etc/mail/.fetchmailrc Wij gebruiken onze mailserver niet als zelfstandige server op het web, maar als een soort interne hulpserver die gekoppeld is achter de mailserver van onze provider (pop.euronet.nl). Hier wordt alle mail op 1 hoop samengevoegd op het mailadres igs_sale@igsboekamp.nl. Dat betekent dat wij nog een extra element moeten inbouwen, omdat de mail van een provider met een pop3 protocol moet worden binnengehaald. Deze mogelijkheid is niet standaard ingebouwd in sendmail, omdat sendmail bedoeld is als zelfstandige mailserver op het net. Om met pop3 mail op te kunnen halen is een extra programma nodig.

    Wij gebruiken hiervoor fetchmail (manual). Fetchmail haalt de mail vanaf een provider server zoals bijvoorbeeld pop.wanadoo.nl en biedt deze aan op de localhost, poort 25. Daardoor lijkt het voor sendmail alsof hij zelf de mail heeft binnengehaald. De verdere beoordeling en distributie van de mail is aan sendmail. Fetchmail wordt standaard meegeinstalleerd met Fedora. Er moet onder Fedora een configuratiefile voor gemaakt worden met een teksteditor. Deze bestaat nog niet en moet /root/.fetchmailrc heten. In deze file moeten alle mailaccounts die moeten worden gepopt, worden opgenomen op onderstaande voorbeeldmanier:

    IGS:
    poll euronet.nl
    proto pop3
    auth password via pop.euronet.nl user "inlognaam" pass "userpassword" is marjan

    De permissies van /root/.fetchmailrc mogen enkel op lezen en schrijven van de root gezet worden anders werkt het niet. Het is nu tijd om te testen met fetchmail in een terminal. Verder is het inherent aan pop3 dat het niet continu werkt maar bij tijden moet worden aangeroepen. Fetchmail kan daarom als daemon wordengestart waardoor er iedere zoveel seconden de mailbox wordt gecontroleerd. Hiervoor heeft fetchmail een optie zodat het als daemon gestart kan worden Fetchmail moet dan vanuit een terminal opgestart worden als: fetchmail -d 30 -f /etc/mail/.fetchmailrc waarbij -d 30 de tijd in seconden is dat de pop3 moet worden uitgevoerd. De optie -a (--fetchall) zorgt ervoor dat ook de reeds gelezen emails worden gefetched. Omdat dit iedere keer moet worden uitgevoerd als een gebruiker inlogd moet het geautomatiseerd worden, zodat deze daemon start tijdens het booten. Daartoe moet de bovenstaande daemon worden toegevoegd in /etc/rc.d/rc.local. Fetchmail works OK started up manually, but not from an init script. Often, startup scripts have a different environment than an interactive login shell. For instance, $HOME might point to "/root" when you are logged in as root, but it might be either unset, or set to "/" when the startup scripts are running. That means fetchmail at startup can`t find the .fetchmailrc. Pick a location (such as /etc/fetchmailrc) and use fetchmail`s -f option to point fetchmail at it. That should solve the problem.

    IMAP IMAP Om met webmail te kunnen werken moet de mail als IMAP box worden aangeboden aan de gebruikers. Hiervoor kan dovecot worden gebruikt.Op een linuxbox kan nu met Evolution de email bekeken en bewerkt worden. Evolution kan rechtstreeks met de persoonlijke emailmappen worden gekoppeld. Op een Windows client ligt dat anders. Outlook Express kan enkel het pop3 of imap protocol inzetten om email van onze server op te vragen. Daarom moet er een pop- of imap service aan clients worden aangeboden. Het benodigde programma heet Dovecot. Het wordt standaard geinstalleerd onder Fedora. Het configuratiebestand is /etc/dovecot.conf. * Testen & User Mail clients. Om te testen lijkt het gemakkelijkst om het Linu mailprogramma Evolution op IGServer te gebruiken. Wij gebruiken Evolution als user email client. Evolution is te beschouwen als de Linux tegenhanger van Microsoft Exchange Server. Het is dus veel meer dan een eenvoudige email client. Echter wij gebruiken geen Exchange server. Voor lokale mailbezorging is /var/spool/mail/richard de juiste folder. Die werkt echter niet en geeft een error. Indien fetchmail wordt gestart (als root) dan gaat alle mail naar de root-mailbox. Bij het migreren naar Evolution ver:2" liep ik op 1 client tegen een raar probleem op. Een client bestaat voor ons op dit moment het lieft uit Outlook2000 omdat deze het makkelijkst lijkt om te integreren. Belangrijk is dat de userclient de emails op de server laat liggen. Client hebben gemiddeld 2 mogelijkheden om email van een server te lezen: imap of POP3. Het lijkt er op dat wij eigenlijk IMAP wensen. * protocols = imap imaps pop3 pop3s uncommented en pop3 en pop3s toevoegen. Na een reboot zullen de gebruikers worden gecheckt of ze ook echte systeemgebruikers zijn. # Mail beschikbaar maken als webmail IMP webmail client, PHP programma voor pop en imap accounts. Heeft het Horde framework nodig. squirrel mail, PHP, ziet er goed uit. openwebmail, pl en cgi. Gekozen voor squirrelmail. Installeren met yum install squirrelmail. Er moet een flash player plugin voor Mozilla worden geinstalleerd.



    Vorige: Ftp Home Volgende: Gebruikersprogramma`s

    $val ){ $$key = stripslashes( $val ); } $jaar = substr($changeddate,0,4); $maand = substr($changeddate,5,2); $dag = substr($changeddate,8,2); $lastupdate = ("$jaar $maand $dag"); $prtsrttxt = get_txt($con1, 26, 1, $idsrtodd); $jaar = substr($createddate,0,4); $maand = substr($createddate,5,2); $dag = substr($createddate,8,2); $create_stamp = ("$dag $maand $jaar"); //GENERAL INFO FOR EVERY USER ************************************************** echo ("

    "); echo (""); if ($codetext) { //Code like KY-026 or NA-41 echo (""); } //End of if ($codetext) $tmp = get_txt($con1, 9, $koekje[2], 3741); //Fieldname at screen if ($prijseurinclbtw > 0){ //Show price indication $prijs_formatted = number_format($prijseurinclbtw / 100, 2, ',', '.'); echo (""); echo (""); } //End of if ($prijseurinclbtw > 0) if ($sketchtext) { //Link to OWN SOFTWARE $tmp = get_txt($con1, 9, $koekje[2], 3738); //Fieldname at screen echo (""); } //End of if ($sketchtext) $tmp = get_txt($con1, 9, $koekje[2], 3744); //Fieldname at screen if ($pinouttext) { //Pinout echo (""); } $tmp = get_txt($con1, 9, 1, 3735); //Fieldname at screen $tmp2 = get_txt($con1, 26, 1, $row4[16]); //Group name in its language echo (""); if ($koekje[0]>0 and $koekje[3]>0){ //User is logged in and translates $tmp = get_txt($con1, 9, $koekje[2], 3918); //Fieldname at screen LANGUAGE if ($row4[26] == 1) {$imgname = "nederland.png";} if ($row4[26] == 2) {$imgname = "deutschland.png";} if ($row4[26] == 3) {$imgname = "uk.png";} if ($row4[26] == 4) {$imgname = "france.png";} echo (""); $tmp = get_txt($con1, 9, $row4[27], 3919); //Fieldname at screen $statuskey = get_status_key($con1, $status); $tmp2 = get_txt($con1, 61, $koekje[2], $statuskey); //Fieldname at screen echo (""); } $tmp = get_txt($con1, 9, 1, 3966); //Fieldname at screen echo (""); echo ("
    "); //Header $tmp = get_txt($con1, 9, $koekje[2], 3923); //Fieldname at screen if ($koekje[3]=="1") { //If this user wants to translate then echo ("$tmp"); //If desired }else{ echo ("$tmp"); } //Else just show if no need to translate if ($koekje[0]>0 and $koekje[3]>0){ //User is logged in and translates echo (" (edit)"); } echo ("Algemene informatie test
    "); $tmp = get_txt($con1, 9, $koekje[2], 3739); //Fieldname at screen if ($koekje[3]=="1") { //If this user wants to translate then echo ("$tmp"); //Class for colour }else{ //So you are not allowed to translate echo $tmp; //Show screenname of this field in user language } //End of If you want to translate this fieldname at screen echo (" "); if ($codelink) { echo ("$codetext"); }else{ echo ("$codetext"); } //End of if ($pinoutlink) echo ("
    $tmp  "); if ($urlprijs){ echo ("€  $prijs_formatted"); }else{ echo ("€  $prijs_formatted"); } //End of if ($urlprijs > "") echo ("
    $tmp  "); if ($sketchlink) { echo ("$sketchtext"); }else{ echo ("$sketchtext"); } //End of if ($sketchlink) echo ("
    $tmp  "); if ($pinoutlink) { echo ("$pinouttext"); }else{ echo ("$pinouttext"); } //End of if ($pinoutlink) echo ("
    $tmp  "); //MENU GROUP echo (""); echo ("$tmp2
    $tmp"); echo ("flag.gif"); echo ("
    $tmp  "); //STATUS echo ("$status $tmp2
    $tmp  "); //LAST CHANGED $tmp = substr($changeddate, 0, 10); echo ("$tmp

    "); return; //////////////////////////////////////////////////////////////////////////////// function get_status_key($con, $num){ $qry = ("SELECT id FROM status WHERE nr = $num ;"); $result = pg_query($con, $qry); $row = pg_fetch_array($result); return ("$row[0]"); } 0 AND software.rstid = 2 AND tblsystext.lanid = $koekje[2] AND tblsystext.txlid = 19 ORDER BY sftname ASC , controller ASC ;"); $result = pg_query($con1, $qry2); if (pg_num_rows($result)>0) { //Only if at least 1 program exists echo ('

    '); echo (""); while($col = pg_fetch_array($result)){ $col[0] = ("$col[0]"); echo (""); echo (""); echo (""); if ($koekje[0] > 0 and $koekje[3]>0){ //User is logged in and translates echo (""); } echo (''); } echo ('
    "); //Header $tmp = get_txt($con1, 9, $koekje[2], 3922); //Fieldname at screen if ($koekje[3]=="1") { //If this user wants to translate then echo ("$tmp"); //If desired }else{ echo ("$tmp"); } //Else just show if no need to translate echo ("
    $col[2]  $col[0]"); echo ("(Edit)
    '); } ?> 0){ if ($header == 0) { echo ("

    "); echo (""); $header++; } //End of if ($header == 0) echo (""); echo (""); } } if ($header > 0){ echo ("
    "); //Header $tmp = get_txt($con1, 9, $koekje[2], 3879); //Fieldname at screen if ($koekje[3]=="1") { //If this user wants to translate then echo ("$tmp"); //If desired }else{ echo ("$tmp"); } //Else just show if no need to translate echo ("
    $colbpp[2]"); //Show software van deze bot $qry=("SELECT software_basedir FROM farmbotversie WHERE id = $colbpp[0];"); $result = pg_query($con1, $qry); $col = pg_fetch_array ($result ,0); $dir1 = "/var/www/html/robotigs/software/$col[0]"; $arr1 = glob($dir1, GLOB_ONLYDIR); if (isset($arr1[0])){ $folder = $arr1[0]; $countertmp = 0; echo ("
      "); foreach (scandir($folder, 1) as $filename) { if ($filename<>"." AND $filename <>".."){ if ($countertmp == 0){ $countertmp++; } //End of if ($countertmp == 0) $tmp = "/"; $dir = substr($folder, 14) ."/"; $link = $tmp .$dir .$filename; $showname = substr($filename, 0 ,-4); echo ("
    • "); echo "$showname"; echo ("
    • "); } //End of if ($filename<>"." AND $filename <>".."){ } //End of foreach (scandir($folder, 1) as $filename) echo ("
        "); } //End of if (isset($arr1[0])) echo ("
    "); } ?>
    Warning: include(/var/www/html/robotigs/includes/wishlistperpart.php): Failed to open stream: No such file or directory in /var/www/html/robotigs/includes/parts_header.php on line 128

    Warning: include(): Failed opening '/var/www/html/robotigs/includes/wishlistperpart.php' for inclusion (include_path='.:/usr/share/php') in /var/www/html/robotigs/includes/parts_header.php on line 128