SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 30.09.2015, 14:33:42
Volker1 Volker1 ist offline
Anfänger
 
Registriert seit: Sep 2015
Alter: 72
Beiträge: 3
Speicherbereich nach mysqlinsert frei geben

Hallo zusammen
Ich habe folgendes Problem: Ich möchte nachdem ich einen Datensatz in eine Tabelle geschrieben habe den Speicherbereich wieder frei geben.
Dazu so glaube ich habe ich die Funktion mysqli_free_result und mysqli_store_result gefunden.
Ich vermute mal, dass ich mit mysqli_store_result arbeiten muss, wenn ich einen insert mache weiß es aber auch nicht ganz sicher.
Wie dem auch ist: Habe viele Stellen im Netz gefunden wo man versucht es zu erklären. Ein fassbares Beispile bisher jedoch nicht gefunden.
Als Syntax habe ich mysqli_stmt_store_result($stmt) und noch viele andere gefunden. Kann mir jeman mal mitteilen was ich denn nun tatsächlich verwenden muss.
Unten im Code steht noch mysqli_stmt_store_result($query) damit bekomme ich dann die folgende Fehlermeldung.
Warning: mysqli_stmt_store_result() expects parameter 1 to be mysqli_stmt, string given in
Habe zig Varianten versucht keine hat geholfen. Ich bin hier für jeden Tipp dankbar.
Danke!

PHP-Code:
$query ="";
require_once (
'../allg/konfiguration.php');
require_once (
'../allg/opendb.php');

# Tabelle leeren
$query "truncate table ip2location_db9";
mysqli_query($db_link$query) or die (mysqli_error($db_link));
define("ip_from"0);
define("ip_to"1);
define("country_code"2);
define("country_name"3);
define("region_name"4);
define("city_name"5);
define("latitude"6);
define("longitude"7);
define("zip_code"8);
require_once (
'../allg/konfiguration.php');
require_once (
'../allg/opendb.php');
if ((
$handle fopen("C:\Users\Volker\Downloads\IP2LOCATION_LITE_DB9.CSV\IP2LOCATION_LITE_DB9.CSV_02.csv""r")) !== FALSE) {
    while ((
$data fgetcsv($handle1000",")) !== FALSE) {
#        $num = count($data);
        
$query "INSERT INTO ip2location_db9 VALUES ".
    
"(".$data[ip_from].",
     '"
.$data[ip_to]."',
      '"
.$data[country_code]."',
       '"
.$data[country_name]."',
        '"
.$data[region_name]."',
         '"
.$data[city_name]."',
          '"
.$data[latitude]."',
           '"
.$data[longitude]."',
            '"
.$data[zip_code]."'),";
              
$query substr($query0, -1);
               
$query $query.";";
                 
mysqli_query($db_link$query) or die (mysqli_error($db_link));
                 echo 
$query;
                 
mysqli_stmt_store_result($query);
}
    
fclose($handle);

Mit Zitat antworten
  #2  
Alt 30.09.2015, 18:28:20
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: Speicherbereich nach mysqlinsert frei geben

Hallo und willkommen hier im Forum.


Schau mal hier. Du musst Deine Query erst in ein Statment umwandeln. Dann sollte es funktionieren.

Welchen Zweck hat ein zweimaliger Aufruf von require_once an verschiedenen Stellen?
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #3  
Alt 30.09.2015, 22:51:54
Volker1 Volker1 ist offline
Anfänger
 
Registriert seit: Sep 2015
Alter: 72
Beiträge: 3
AW: Speicherbereich nach mysqlinsert frei geben

Hallo
zunächst vielen Dank für den unerschrockenen Einsatz.
Die beiden
require_once ('../allg/konfiguration.php');
require_once ('../allg/opendb.php');
sind natürlcih überflüssig.
Der abgegebene Link ist mir bekannt. Aber ich schaffe es nicht ihn umzusetzen.
Ich kann diese Angaben einfach nicht interpretieren und auf mein Problem übertragen.
Ich suche deshalb kein abstraktes Beispiel sondern ein Beispiel bezogen auf mein Problem.
Ich weis das das abstrakte Beispiel dies sicherlich abdeckt aber ich kann es nicht umsetzen.
Mit Zitat antworten
  #4  
Alt 01.10.2015, 10:47:36
Volker1 Volker1 ist offline
Anfänger
 
Registriert seit: Sep 2015
Alter: 72
Beiträge: 3
AW: Speicherbereich nach mysqlinsert frei geben

Hallo und guten Tag vt1816
Habe mich noch einmal intensiv mit deinem Link beschäftigt und noch ein Beispiel gefunden.
So wie es aussieht scheint es auch zu funktionieren. Ich muss immerhin 3,5 Millionen Datensätze importieren. Hier der aktuelle code.
Vielen Dank für den Tipp es hat also doch noch funktioniert.

PHP-Code:
<?php
$beginn 
microtime(true);   
ini_set('max_execution_time'3600);
ini_set('memory_limit''1024M');
require_once (
'../allg/konfiguration.php');
require_once (
'../allg/opendb.php');

# Tabelle leeren
$query "truncate table ip2location_db9";
mysqli_query($db_link$query) or die (mysqli_error($db_link));
define("ip_from"0);
define("ip_to"1);
define("country_code"2);
define("country_name"3);
define("region_name"4);
define("city_name"5);
define("latitude"6);
define("longitude"7);
define("zip_code"8);

if ((
$handle fopen("C:\Users\Volker\Downloads\IP2LOCATION_LITE_DB9.CSV\IP2LOCATION_LITE_DB9.CSV_02.csv""r")) !== FALSE) {
    while ((
$data fgetcsv($handle1000",")) !== FALSE) {
    
$query "INSERT INTO ip2location_db9 VALUES ".
    
"(".$data[ip_from].",
     '"
.$data[ip_to]."',
      '"
.$data[country_code]."',
       '"
.$data[country_name]."',
        '"
.$data[region_name]."',
         '"
.$data[city_name]."',
          '"
.$data[latitude]."',
           '"
.$data[longitude]."',
            '"
.$data[zip_code]."'),";
              
$query substr($query0, -1);
               
$query $query.";";

if (
$stmt mysqli_prepare($db_link$query)) {

    
/* execute query */
    
mysqli_stmt_execute($stmt);

    
/* store result */                              
    
mysqli_stmt_store_result($stmt);

#    printf("Number of rows: %d.\n", mysqli_stmt_num_rows($stmt));

    /* free result */
    
mysqli_stmt_free_result($stmt);

    
/* close statement */
    
mysqli_stmt_close($stmt);
.
}
    
fclose($handle);

# hier lasse ich mir während der Testphase ausgeben wieviel tatsächlich importiert wurden.

   
if ($result mysqli_query($db_link"Select count(*) from ip2location_db9")) {
       
$row_cnt mysqli_num_rows($result);
       
printf("Es wurden %d rows.\n",$row_cnt);
       
mysqli_free_result($result);
   }
}
$dauer microtime(true) - $beginn;
echo 
"Verarbeitung des Skripts: $dauer Sek.";
?>
Mit Zitat antworten
  #5  
Alt 01.10.2015, 14:17:36
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: Speicherbereich nach mysqlinsert frei geben

Prima, dass es doch noch geholfen hat.
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
Antwort

Stichworte
mysqli_free_result, mysqli_store_result


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
frei bewegliche divs ?! [inSane] HTML, CSS und JavaScript Help! 8 28.03.2008 03:30:36
Webeditor - Ist es möglich Bild frei zu platzieren? ksticker PHP für Fortgeschrittene und Experten 7 01.03.2008 14:41:35
alle results frei geben... aber wie? sqlgehirn MySQLi/PDO/(MySQL) 5 25.11.2003 00:11:02
Problem mit selbstgeschriebener Funktion Wauzy PHP für Fortgeschrittene und Experten 2 16.10.2003 14:40:48


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:06:26 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt