Wie kan me ff op weg helpen?
Wat gaat er fout: hij insert sommige regio's niet, terwijl hij ze wel goed ophaald.
Bij het volgende stukje code gaat het mis, want als ik daarna de Values print, pakt hij sommige wel en sommige niet, als ik de Values print die er voor komen gaat het goed, na deze handeling gaat het volgens mij mis.
Wie ziet de fout en wil me ff op weg helpen.PHP Code:
foreach($dbvalues as $key => $value)
{
//if($key=="") continue;
if($sFields!="") $sFields.=", ";
$sFields.=("`".$key."`");
if($sValues!="") $sValues.=", ";
$sValues.=("\"".addslashes ($value)."\"");
}
$sql = "insert into reizen (";
$sql .= "`uid`, `aanbieder`, ";
$sql .= $sFields;
$sql .= ") values (";
$sql .= "\"\", \"".$aanbieder."\", ";
$sql .= $sValues.")";
//DebugPrint($sValues);
return($sql);
}
Met vriendelijke groet richard
- Wie ziet wat er fout gaat.
-
19-01-2010, 14:16 #1
- Berichten
- 114
- Lid sinds
- 15 Jaar
Wie ziet wat er fout gaat.
-
-
19-01-2010, 14:24 #2
- Berichten
- 126
- Lid sinds
- 15 Jaar
Hier kan van alles aan fout zijn; van de declaratie van het veld 'uid' of dat er misschien velden worden gevuld die niet in de tabel voorkomen.
Kan je het volgende proberen:
- Afdrukken van de gegenereerde sql-statement
- Controleren of mysql een foutmelding geeft (via de functie 'mysql_error()')
-
19-01-2010, 14:55 #3
- Berichten
- 114
- Lid sinds
- 15 Jaar
@ ewout quax,
Alle tabellen staan er gewoon goed in hij haald ook juiste waardes op, hij insert ze ook gewoon goed, enkeld bij somige de regio's niet, en dan bij de rest weer wel, dat is juist het vreemde er aan.
Hierbij stukje php code.
PHP Code://DebugPrint("DbValues:");
//print_r($dbvalues);
// finally build the query based on the database values array
foreach($dbvalues as $key => $value)
{
//if($key=="") continue;
if($sFields!="") $sFields.=", ";
$sFields.=("`".$key."`");
if($sValues!="") $sValues.=", ";
$sValues.=("\"".addslashes ($value)."\"");
}
$sql = "insert into reizen (";
$sql .= "`uid`, `aanbieder`, ";
$sql .= $sFields;
$sql .= ") values (";
$sql .= "\"\", \"".$aanbieder."\", ";
$sql .= $sValues.")";
//DebugPrint($sValues);
return($sql);
}
function url_fopen($url, $mode)
{ // Alternative for fopen in case allow_url_fopen is switched off at server level
// uses curl to create a local file
// check status of setting using phpinfo
if(!ini_get('allow_url_fopen') || (isset($_importeren_curl) && $_importeren_curl))
{
// create a local file containing the feed
$filename=dirname($_SERVER['SCRIPT_FILENAME'])."/day/import.txt";
$ch = curl_init($url);
if($fp = fopen($filename, 'w'))
{
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);
// open the local file for reading
$fp = fopen($filename, 'r');
}
else
return(false);
}
else
$fp = fopen($url, 'r');
return($fp) ;
}
function ImportVRB()
{
DebugPrint("Importeren - aanbieder: Particulier");
$totalrow = 0; $rowinserted=0;
include "dbjoomla.php";
$sql = "SELECT * FROM `jos_comprofiler` where approved='1' ";
$result = mysql_query($sql) ;
$data_k_array=array();
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
if ($row['approved'] and $row['confirmed'])
{
$data_k['title'] =ucfirst(strtolower(trim($row['cb_accommodatie']))).' '.ucfirst(strtolower(trim($row['firstname']))).' '.ucfirst(strtolower(trim($row['lastname'])));
$data_k['link'] ='http://'.trim($row['cb_linkobject1']);
$data_k['description'] =ucfirst(trim(utf8_encode($row['cb_beschrijving'])));
// $data_k['description'] =trim($row['cb_beschrijving']);
$data_k['price'] =trim($row['cb_vanafprijs']);
$data_k['country'] =landcode(trim($row['cb_land']));
$data_k['persons'] =trim($row['cb_personen']);
$data_k['length'] =trim($row['cb_lengte']);
$data_k['accomodation_type']=ucfirst(strtolower(trim($row['cb_accommodatie'])));
$data_k['location'] =ucfirst(strtolower(trim($row['cb_plaats'])));
$data_k['holiday_type'] =ucfirst(strtolower(trim($row['cb_verzorging'])));
$data_k['region'] =ucfirst(strtolower(trim($row['cb_regio'])));
$data_k['image'] ='http://www.domeinnaam.nl/images/comprofiler/'.trim($row['cb_foto1']);
$data_k['transportation_type']='Eigen vervoer';
debugprint ($data_k['title']);
$data_k_array[]=$data_k;
$totelrow++;
}
}
Laatst aangepast door Richard pieterse : 19-01-2010 om 15:01
-
19-01-2010, 14:57 #4
- Berichten
- 330
- Lid sinds
- 18 Jaar
Print je $sql eens hier wanneer het fout gaat.
-
19-01-2010, 15:00 #5
- Berichten
- 114
- Lid sinds
- 15 Jaar
@arjen rademaker, kan je met die code hier boven meer?
Anders print ik ff die $sql ff
Groetjes richard
-
19-01-2010, 15:05 #6
- Berichten
- 330
- Lid sinds
- 18 Jaar
Het lijkt mij toch makkelijker dat je even de sql (waar het fout gaat) hier neer zit om te kijken of daar geen fouten inzitten. Want de code doorspitten lijkt mij niet helemaal nodig.
-
19-01-2010, 15:13 #7
- Berichten
- 114
- Lid sinds
- 15 Jaar
@arjen rademaker,
Hierbij de code
iedergeval bedankt voor de hulp alvast.
Met vriendelijke groet richardLaatst aangepast door Richard pieterse : 19-01-2010 om 18:14
-
19-01-2010, 15:29 #8
- Berichten
- 330
- Lid sinds
- 18 Jaar
Gaat het in deze query fout, of is dit een willekeurige query? En pas je overal een mysql_real_escape_string toe om bijvoorbeeld geen problemen te krijgen met quotes of andere rariteiten (mooi woord :p).
-
19-01-2010, 15:33 #9
- Berichten
- 114
- Lid sinds
- 15 Jaar
@ arjen rademaker,
Het gaat echt om deze fout, je kan ook zien bij de 1 staat die regio er wel bij, en bij de bovenste bv niet.
En die mysql_real_escape_string moet ik inderdaad ff toepassen overal, maar zal dit mijn probleem kunnen oplossen?
Groetjes richard
-
19-01-2010, 15:33 #10
- Berichten
- 330
- Lid sinds
- 18 Jaar
Heb je ook al gewerkt met mysql_error() om te achterhalen of er in de query fouten zitten? Of ben je er van overtuigd dat het zit in de overige coding?
Edit: Waar wordt $dbvalues aangemaakt, want dat kan ik niet terugvinden in je code?
Volgens mij is de scripting die je geeft niet helemaal volledig he? Is het mogelijk om de volledige scripting (althans als het 1 pagina is) te geven?
Al wel gecontroleerd of in de database wel de regio's allemaal zijn ingevuld (waarschijnlijk wel)?Laatst aangepast door Arjen Rademaker : 19-01-2010 om 15:41
-
19-01-2010, 18:11 #11
- Berichten
- 114
- Lid sinds
- 15 Jaar
Opgelost door arjen rademaker,
helemaal super
Groetjes richard
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic